1
我們正在使用MVVM實現WPF業務應用程序。目前我們正在嘗試確定爲DataGrid顯示驗證錯誤的最佳方式。目前,我們正在努力這樣做是這樣的:WPF DataGrid - 驗證建議
1)查看用戶控件包含綁定到位於關聯的視圖模型
2)視圖模型implments的IDataErrorInfo的接口實體框架對象的EntityCollection一個DataGrid。在視圖模型也有正常的特性包括用於實現IDataErrorInfo.Item
3)實現IDataErrorInfo.Item要求從底層模型驗證,以確定是否有任何驗證問題
該作品的屬性的屬性罰款的任何文本框或視圖上的組合框 - validatiosn正在按預期處理。但是對於數據網格,我們很難過 - 無論我們嘗試過什麼,驗證都不會發生。目前它是這樣定義的:
<DataGrid x:Name="dgWikiNames" ItemsSource="{Binding Wiki_Names, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged, ValidatesOnDataErrors=True, NotifyOnSourceUpdated=True}" AutoGenerateColumns="False">
<DataGrid.RowValidationRules>
<DataErrorValidationRule ValidationStep="UpdatedValue"/>
</DataGrid.RowValidationRules>
<DataGrid.Columns>
<DataGridTextColumn Header="First Name">
<DataGridTextColumn.Binding>
<Binding Path="First_Name" ValidatesOnDataErrors="True">
<Binding.ValidationRules>
<DataErrorValidationRule/>
<!--<local:CellDataInfoValidationRule ValidationStep="UpdatedValue"/>-->
</Binding.ValidationRules>
</Binding>
</DataGridTextColumn.Binding>
</DataGridTextColumn>
<DataGridTextColumn Header="Is Primary" Binding="{Binding Primary_Flag}"/>
</DataGrid.Columns>
</DataGrid>
如果任何人有任何指示或建議,我們將不勝感激。 感謝