我定义了以下DataTemplates。 TextBlock适用于xctk:ShortUpDown不支持。事实上,每当我使用来自另一个命名空间的控件时,它都不起作用(即没有数据显示或更新
<DataTemplate x:Key="intDataTemplate">
<TextBlock Text="{Binding StringFormat=\{0:F0\}}"/>
</DataTemplate>
<DataTemplate x:Key="hexDataTemplate">
<xctk:ShortUpDown ParsingNumberStyle="HexNumber"/>
</DataTemplate>
这些是列定义。没有CellEditorTemplate可用。
<xcdg:Column FieldName="Coefficient" Width="75"
CellContentTemplate="{StaticResource hexDataTemplate}" ReadOnly="False"/>
<xcdg:Column FieldName="Measured" Width="75" CellHorizontalContentAlignment="Right"
CellContentTemplate="{StaticResource intDataTemplate}" />
那里似乎没有很多示例代码。列是自动生成的。
任何建议都表示赞赏。
答案 0 :(得分:0)
CellContentTemplate仅用于显示目的。如果你在其中放置一个用于编辑的控件,比如ShortUpDown,你会得到奇怪的结果。 编辑器控件应该在CellEditor中定义。另外,不要忘记设置CellEditorBinding以将其连接到基础值。
<xcdg:CellEditor x:Key="hexCellEditor">
<xcdg:CellEditor.EditTemplate>
<DataTemplate>
<xctk:ShortUpDown Value="{xcdg:CellEditorBinding}" ParsingNumberStyle="HexNumber"/>
</DataTemplate>
</xcdg:CellEditor.EditTemplate>
</xcdg:CellEditor>
<xcdg:Column FieldName="Measured" CellEditor="{StaticResource hexCellEditor}" ... />