我在C#WPF中使用Infragistics的“XamPropertyGrid”, 我创建了两个类如下:
public class ClassA
{
public ClassB B { get; set; }
}
public class ClassB
{
public bool C { get; set; }
}
目标是为PropertyGrid创建一个自定义编辑器,其中包含一个Checkbox控件并设置ClassA实例的属性B.C
这是我的xaml代码:
<ig:XamPropertyGrid x:Name="pGrid">
<ig:XamPropertyGrid.EditorDefinitions>
<ig:PropertyGridEditorDefinition>
<ig:PropertyGridEditorDefinition.TargetProperties>
<system:String>B</system:String>
</ig:PropertyGridEditorDefinition.TargetProperties>
<ig:PropertyGridEditorDefinition.EditTemplate>
<DataTemplate>
<CheckBox Content="XYC" IsChecked="{Binding Value.C}"></CheckBox>
</DataTemplate>
</ig:PropertyGridEditorDefinition.EditTemplate>
</ig:PropertyGridEditorDefinition>
</ig:XamPropertyGrid.EditorDefinitions>
</ig:XamPropertyGrid>
一开始,我为PropertyGrid设置了所选对象,如下所示:
public MainWindow()
{
InitializeComponent();
ClassA a = new ClassA();
a.B = new ClassB();
pGrid.SelectedObject = a;
}
但是当我检查Checkbox时,Property C不会改变。至于我调试了编辑器DataTemplate中的Value属性为null。 (我在Binding中放了一个转换器来检查它。)
先谢谢你。
答案 0 :(得分:0)
似乎它只是XamPropertyGrid中的一个错误,您需要做的就是更新到2015.2版