Xceed 属性 基于值的网格样式名称

Xceed Property Grid style name based on value

我想将 "Name2" 的背景设置为灰色,因为值为“2”。

我怎样才能做到这一点?

我尝试在 "PropertyItem" 上将 DataTrigger 与转换器一起使用,但没有成功。

您可以为 Name2 属性 定义一个 EditorTemplate:

<xctk:PropertyGrid ...>
    <xctk:PropertyGrid.EditorDefinitions>
        <xctk:EditorDefinition>
            <xctk:EditorDefinition.PropertiesDefinitions>
                <xctk:PropertyDefinition Name="Name2" />
            </xctk:EditorDefinition.PropertiesDefinitions>
            <xctk:EditorDefinition.EditorTemplate>
                <DataTemplate>
                    <TextBlock Text="{Binding Value}">
                        <TextBlock.Style>
                            <Style TargetType="TextBlock">
                                <Style.Triggers>
                                    <DataTrigger Binding="{Binding Value}" Value="2">
                                        <Setter Property="Background" Value="Gray" />
                                    </DataTrigger>
                                </Style.Triggers>
                            </Style>
                        </TextBlock.Style>
                    </TextBlock>
                </DataTemplate>
            </xctk:EditorDefinition.EditorTemplate>
        </xctk:EditorDefinition>
    </xctk:PropertyGrid.EditorDefinitions>
</xctk:PropertyGrid>