【问题标题】:Bind value from DataContext to converter parameter将 DataContext 中的值绑定到转换器参数
【发布时间】:2014-02-04 16:37:22
【问题描述】:

我有一个问题: 我有一个数据网格。网格的 DataContext 设置为一个名为“FinanceTransferEntries”的集合,该集合有几个字段。下面的代码段显示了绑定集合的属性“ID”的第一列(工作正常)。

我实现了一个转换器,它根据

为单元格的背景着色
  1. 静态布尔值 "IDTransfer" --> 也可以正常工作
  2. 以及该字段的当前单元格的值。

这是我的问题。我没有找到正确的绑定语句来访问“ID”属性的当前值。

    <igDP:Field Name="ID" Label="ID" Width="Auto"  >
        <igDP:Field.Settings>
            <igDP:FieldSettings AllowEdit="False">
                <igDP:FieldSettings.EditorStyle>
                    <Style TargetType="{x:Type igEditors:XamTextEditor}" >
                        <Setter Property="Background">
                            <Setter.Value>
                                <MultiBinding Converter="{StaticResource DependentBackrgoundConverter}">
                                    <Binding ? />
                                    <Binding RelativeSource="{RelativeSource AncestorType={x:Type uc:TransferDataUC}}" Path="ViewModel.SelectedFinanceTransferViewModel.FinanceTransferDetailViewModel.IDTransfer" />
                                </MultiBinding>
                            </Setter.Value>
                        </Setter>
                    </Style>
                </igDP:FieldSettings.EditorStyle>
            </igDP:FieldSettings>
        </igDP:Field.Settings>
    </igDP:Field>

我们将不胜感激!

【问题讨论】:

  • 不就是&lt;Binding Path="ID"/&gt;吗?
  • 我已经试过了。我得到了异常System.Windows.Data Warning: 40 : BindingExpression path error: 'ID' property not found on 'object' ''DataRecord' (HashCode=26674058)'. BindingExpression:Path=ID; DataItem='DataRecord' (HashCode=26674058); target element is 'XamTextEditor' (Name=''); target property is 'Background' (type 'Brush')
  • 那么&lt;Binding Path="DataItem.ID"/&gt;呢?
  • 那个成功了,谢谢!

标签: wpf wpfdatagrid infragistics


【解决方案1】:

谢谢克莱门斯,表达方式

<Binding Path="DataItem.ID"/>

做到了。

【讨论】:

    猜你喜欢
    • 2010-11-23
    • 2011-05-22
    • 2011-02-09
    • 2020-08-07
    相关资源
    最近更新 更多