Infragistics XamDataGrid 的 AllowEdit 属性绑定不起作用。

4

在我的XAML中,我正在尝试将AllowEdit属性与一个属性绑定到我的XamDataGrid上

<igDP:XamDataGrid.FieldSettings>
  <igDP:FieldSettings AllowEdit="{Binding Path=DataItem.Approved}"/>
</igDP:XamDataGrid.FieldSettings>

但它不起作用。其他所有绑定都正常工作。有什么想法吗?我是WPF的新手,所以任何帮助将不胜感激。


这些字段不是可视树或逻辑树的一部分,因此绑定将失败。您可以在此处找到解决方法: http://blogs.infragistics.com/blogs/josh_smith/archive/2008/06/06/binding-a-xamdatagrid-field-property.aspx - alhalama
4个回答

4

我使用样式来解决这个限制,例如:

<igWPF:Field Name="SomeValue">
    <igWPF:Field.Settings>
    <igWPF:FieldSettings EditorType="{x:Type igWPF:XamNumericEditor}">
        <igWPF:FieldSettings.EditorStyle>
        <Style TargetType="{x:Type igWPF:XamNumericEditor}">
            <Setter Property="IsReadOnly" Value="{Binding DataItem.IsReadOnly}" />
        </Style>
        </igWPF:FieldSettings.EditorStyle>
    </igWPF:FieldSettings>
    </igWPF:Field.Settings>
</igWPF:Field>

它实际上并没有编译,我错误地标记了它(抱怨DataItem)。 - Bek Raupov

3

我通常使用一种样式来实现这个,就像 @larsmona 上面的回答中所述。最近我学习了使用CellBindings和FieldBindings来实现这个。

https://www.infragistics.com/community/blogs/b/blagunas/posts/feature-spotlight-new-fetaures-in-the-infragistics-wpf-xamdatagrid

https://www.infragistics.com/help/wpf/xamdatagrid-binding-cell-settings-data-item-properties

http://help.infragistics.com/Help/Doc/WPF/2014.2/CLR4.0/html/xamDataPresenter_Binding_Cell_Settings_Data_Item_Properties.html

<igDP:Field Name="SomeName" Row="0" Column="1" Label="SomeLabel" AllowEdit="True">
  <igDP:Field.CellBindings>
   <igDP:CellBinding Target="Editor" Property="IsReadOnly" Binding="{Binding DataItem.SomeProperty}"></igDP:CellBinding>
  </igDP:Field.CellBindings>
</igDP:Field>

1

-1

也许你正在绑定到 ObservableCollection?如果是这种情况,你无法编辑你的项目。你可以尝试绑定到 BindingList


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接