我正在编写下面的代码,它看起来像是有功能的。然而,一旦我得到一个验证错误,它仍然存在,即使验证错误已经得到纠正。我使用EditingElementStyle参数在DataGridTextColumn上使用行级别和单元级别的验证,但这不能在DataGridTemplateColumn中使用。当我不确定如何继续时,有没有可以使用的等价物。下面是我的代码示例,显示了我的DataGridTextColumns和DataGridTemplateColumn之一。
<dg:DataGridTemplateColumn Header="Instrument" MinWidth="140">
<dg:DataGridTemplateColumn.CellTemplate>
<DataTemplate >
<TextBlock Text="{Binding Path=PRODUCTNO, Mode=TwoWay}"/>
</DataTemplate>
</dg:DataGridTemplateColumn.CellTemplate>
<dg:DataGridTemplateColumn.CellEditingTemplate>
<DataTemplate>
<ComboBox IsEditable="True" ItemsSource="{StaticResource TestList}">
<ComboBox.Text>
<Binding Path="PRODUCTNO" UpdateSourceTrigger="PropertyChanged">
<Binding.ValidationRules>
<ValidationRules:IntegerValidationRule />
</Binding.ValidationRules>
</Binding>
</ComboBox.Text>
</ComboBox>
</DataTemplate>
</dg:DataGridTemplateColumn.CellEditingTemplate>
</dg:DataGridTemplateColumn>
<dg:DataGridTextColumn Header="BATCH No." Width="100" EditingElementStyle="{StaticResource CellEditStyle}">
<dg:DataGridTextColumn.Binding>
<Binding Mode="TwoWay" Path="BATCHNO">
<Binding.ValidationRules>
<ValidationRules:StringValidationRule/>
</Binding.ValidationRules>
</Binding>
</dg:DataGridTextColumn.Binding>
</dg:DataGridTextColumn>发布于 2013-10-31 16:18:46
也许可以试试 person所做的。页面上的代码片段似乎不起作用,但他建议使用定制的DataGridTextColumn而不是DataGridTemplateColumn.我将尝试这样做,当(或如果)它工作时,我会更新我的答案。
https://stackoverflow.com/questions/19412677
复制相似问题