【发布时间】:2015-10-05 22:28:07
【问题描述】:
我有一个 XamDataGrid,其中包含一些字段,包括这两个:
<igDP:Field Name="MinValue" Label="Min." Converter="{StaticResource DivideBy1000Converter}" Column="5">
<igDP:Field.Settings>
<igDP:FieldSettings CellWidth="60"
AllowEdit="True"
CellValuePresenterStyle="{StaticResource minValueCellEnabled}"
EditAsType="{x:Type System:String}"
EditorStyle="{StaticResource DecimalMWhStyle}"
CellClickAction="EnterEditModeIfAllowed" />
</igDP:Field.Settings>
</igDP:Field>
<igDP:Field Name="MaxValue" Label="Max." Converter="{StaticResource DivideBy1000Converter}" Column="6">
<igDP:Field.Settings>
<igDP:FieldSettings CellWidth="60"
AllowEdit="True"
CellValuePresenterStyle="{StaticResource maxValueCellEnabled}"
EditAsType="{x:Type System:String}"
EditorStyle="{StaticResource DecimalMWhStyle}"
CellClickAction="EnterEditModeIfAllowed" />
</igDP:Field.Settings>
</igDP:Field>
由于不断变化的需求和一点时间压力,我需要找到一种方法来动态更改字段的转换器和 EditorStyle,具体取决于存在的某个值(最有可能是布尔标志)。我已经看到了使用样式选择器的一般示例,但没有看到如何(如果可能的话)将样式选择器应用于 XamDataGrid 的元素。我最初的想法是使用样式选择器类并为每种情况添加两种样式,即一种用于当字段应使用 DivideBy1000Converter + DecimalMWhStyle 组合时,另一种用于当字段应使用空转换器和 PercentageStyle,但沿途我被卡住了,我现在不知道如何最好地实现我想要的。
有人有好的解决办法吗?
【问题讨论】:
-
你试过使用触发器吗?
-
不,但我会看看。
标签: c# wpf xaml xamdatagrid