2012-07-24 94 views
0

我正在嘗試編寫一個名爲HasUnsavedChanges的函數,該函數基本上應在您關閉表單時調用。即在保存該項目之後,它應該檢查控件中的值與Tag屬性中具有相同功能的值(例如, txtFirstName.Tag = .ContactFirstnametxtFirstName.Text = .ContactFirstname。如果兩者有任何區別,請返回True。在關閉表單時,如果此函數返回true,則詢問是否應該保存更改。控件和標籤屬性

我認爲正確的方法是編寫一個For循環來控制循環,但之後我就卡住了。

+0

控件和屬性名稱之間是否有任何已定義的映射?如果你不這樣做,你需要一個。 – Ryan 2012-07-24 17:43:23

+0

當你說映射到底是什麼意思?像在同一類中定義的那樣? – Jide 2012-07-25 08:58:16

回答

1

假設你已經存儲在同一個控制的。文本和.TAG性質,嘗試這樣的事情:

For Each objControl As Control In frmMain.Controls 
    If TypeOf objControl is TextBox Then 
     If objControl.Tag <> objControl.Text Then 
      '---Changes have been made!--- 
     End if 
    End if 
Next 

很顯然,你需要與你的窗體的名稱來代替「frmMain」。

+0

完美,我只是用Me.Controls替換frmMain,而不是參考表單。非常感謝! – Jide 2012-07-25 09:16:11