我有一個Customer
類,實現INotifyPropertyChanged
。在我的CustomerDetailsViewModel
課程中,我有一個Customer
類型的屬性。在XAML中,每個文本框都綁定到我的視圖模型公開的Customer
的每個屬性。我使用TwoWay
以及PropertyChanged
作爲UpdateSourceTrigger
。如何清除WPF文本框而不更新其雙向綁定源?
現在我想要一個「清除」按鈕,它將清除所有文本框的內容。意圖是讓用戶使用另一個「添加」按鈕創建一個新的客戶。只有當用戶輸入正確的文本時,才能啓用「添加」按鈕。即不應該有任何驗證錯誤。
如何清除所有文本框而不更新當前顯示在GUI上的Customer實例的綁定屬性的值?
我的解決方案: 一種方法可能是創建一個Customer
的新實例,並將所有屬性(如名稱,地址等)設置爲空字符串。但問題是,我創建新實例用戶的那一刻在GUI上看到錯誤模板,因爲驗證(如'空名稱不允許')失敗。
您是否嘗試過將UpdateSourceTrigger設置爲lostFocus或從其文本框中刪除UpdateSourceTrigger屬性。 –