我使用C#和.NET 3.5。 我想做一個對象驗證器,它接收任何類型的控制器並驗證用戶正確使用它。例如,Validator接收一個Textbox,用戶更改Textbox的Text,驗證器會注意到這一點,並對它執行檢查。對象值更改後執行事件
有沒有辦法做到這一點?只要列表中的一個對象發生更改,就會觸發一個事件?
我使用C#和.NET 3.5。 我想做一個對象驗證器,它接收任何類型的控制器並驗證用戶正確使用它。例如,Validator接收一個Textbox,用戶更改Textbox的Text,驗證器會注意到這一點,並對它執行檢查。對象值更改後執行事件
有沒有辦法做到這一點?只要列表中的一個對象發生更改,就會觸發一個事件?
有幾種方法可以做到這一點。閱讀關於他們兩個人在
User Input Validation in Windows Forms 和 ErrorProvider Component (Windows Forms)
問題在於此驗證程序將顯示對象值在文本框中存在的每一個錯誤。例如,如果您有兩個文本框,則會出現一個錯誤文本框,它將顯示兩個錯誤消息。我想要做的是每次更改對象值時重新驗證字段的對象。就像觀察者模式。 –
那麼你應該考慮TextBox.TextChanged或TextBox.TextChanging作爲Maritim建議。 – wonko79
桌面或網頁?對於桌面,您可以使用TextBox.TextChanged事件。 – Maritim
桌面。 Validator只會收到Textbox.Text屬性,所以它不會解決這個問題。我希望Validator在任何給定的對象改變它們的值時觸發一個事件(主要是來自文本框的字符串) –
請發佈一些示例代碼來演示這個問題。 – penguat