Мы внедряем бизнес-приложение WPF с использованием MVVM. В настоящее время мы пытаемся определить лучший способ показать ошибки проверки для DataGrids. В настоящее время мы пытаемся сделать так, как это:WPF DataGrid - рекомендации по валидации
1) Глазами пользовательский элемент управления содержит DataGrid, связанный с EntityCollection от Entity Framework объектов, расположенных в соответствующем ViewModel
2) ViewModel implments интерфейс IDataErrorInfo. В ViewModel есть нормальные свойства, включая свойство для реализации IDataErrorInfo.Item
3) имущества, которое реализует IDataErrorInfo.Item называет проверки от базовой модели, чтобы определить, есть ли какие-либо проверка выдает
это работает отлично подходит для любого текстового поля или combobox в представлении - validatiosn обрабатывается, как ожидалось. Но с datagrid мы в тупике - независимо от того, что мы пробовали, проверка не произойдет. В настоящее время это определяется следующим образом:
<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>
Если у кого есть какие-либо указания или рекомендации, мы будем благодарны. Благодаря