0
我嘗試通過創建公開該實體的ViewModel來採用實體級驗證(對實體屬性進行屬性驗證)。使用MVVM實現Silverlight實體級驗證
public class MyViewModel
{
public MyEntity MyEntity { get; set; }
}
我在XAML中設置綁定,此XAML頁面設置它的DataContext到MyViewModel
TextBlock Text="{Binding MyEntity.MyProperty}"
例如當我從數據庫中加載myEntity所並將其設置爲MyViewModel,沒有發生。我也打電話NotifyPropertyChanged("MyEntity");
,它仍然沒有發生。
我再試一次在MyViewModel
public class MyViewModel
{
private MyEntity MyEntity { get; set; }
public string MyProperty
{
get { return this.MyEntity.MyProperty; }
set { this.MyEntity.MyProperty = value; }
}
}
myProperty的創建和更改XAML綁定到myProperty的。這次我調用NotifyPropertyChanged(「MyProperty」);查看得到更新正確,當我輸入不正確的數據時,它在MyEntity有ValidationErrors,但查看不會引發該錯誤(不顯示紅色邊框)
我想知道如何才能獲得使用MVVM的實體級驗證。
如果你能告訴我們這將有所幫助:A)MyEntity類B)XAML – 2011-03-04 14:55:37