2009-09-29 43 views
1

我在某些地方看到過(對不起,現在無法提供鏈接),表單中的驗證錯誤顯示在頂部的標籤中。當用戶填寫表單時,該錯誤文本會相應更改。在Winforms中使用專用標籤進行自動驗證

我可以看到一個明顯的if ... else和處理「驗證」等事件來實現這一點(儘管它對於複雜的表單來說可能非常繁瑣)。有沒有更直接,更乾淨的方式來做到這一點?

謝謝!

回答

1

您應該看看如this blog post中所述實施IDataErrorInfo。然後,您可以將您的Label綁定到IDataErrorInfo.Error屬性。加一點INotifyPropertyChanged和你的Label會自動更新。

0

如果你想避免在表單上的所有文本框中添加「驗證」事件(並且這使得複雜的表單更復雜),也許你應該嘗試通過表單的OnKeyDown事件捕獲所有輸入,並進行一些解析(保持跟蹤寫什麼,什麼對象有重點)。這樣你就可以在一個地方處理所有事情。