У меня есть ObservableCollection <T>
, где T: INotifyDataErrorInfo.
Объекты в этой коллекции имеют ошибки проверки, затем я привязываю эту коллекцию к Silverlight 4 DataGrid, есть ли способ показать эту ошибку проверки в DataGrid? (показать красную ячейку для недопустимых свойств для каждого объекта). По умолчанию DataGrid показывает ошибку проверки только тогда, когда я начинаю редактировать строку и только для активной строки.
Мне не удалось с помощью элемента управления TextBlock
, поэтому я использовал отключенный TextBox
Вы можете изменить шаблон TextBox
, я хочу удалить границу и установить ее фон действительно прозрачным.
<sdk:DataGrid AutoGenerateColumns="False" ItemsSource="{Binding Items}" IsReadOnly="False" SelectionMode="Single">
<sdk:DataGrid.Columns>
<sdk:DataGridTextColumn Header="Title" Binding="{Binding Title}"/>
<sdk:DataGridTemplateColumn Header="Link" Width="100">
<sdk:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBox Text="{Binding Link, Mode=TwoWay}" Margin="2"
IsEnabled="False" BorderThickness="0" Background="Transparent"/>
</DataTemplate>
</sdk:DataGridTemplateColumn.CellTemplate>
<sdk:DataGridTemplateColumn.CellEditingTemplate>
<DataTemplate>
<TextBox Text="{Binding Link, Mode=TwoWay}" Margin="2"/>
</DataTemplate>
</sdk:DataGridTemplateColumn.CellEditingTemplate>
</sdk:DataGridTemplateColumn>
</sdk:DataGrid.Columns>
</sdk:DataGrid>