我有一个非常简单的要求,即如果满足绑定表达式,则动态地将XamDataGrid
中的几个(不是全部,仅几个)列的宽度设置为0.
有问题的列总是遵循这种结构:
<igDP:UnboundField Name="Data Field 1" BindingPath="SrcEntity.Field1"
Width="{Binding Path=DataContext.GetDynamicWidth}">
<igDP:Field.Settings>
<igDP:FieldSettings AllowHiding="Always" AllowResize="True" />
</igDP:Field.Settings>
</igDP:UnboundField>
当我调试应用程序时,DataContext.GetDynamicWidth
按预期调用,并按预期返回宽度值(0
或Double.NaN
)。但是在网格上,这些具有动态绑定宽度的列的实际宽度不变。
有人能告诉我这是否是一个Infragistics错误,或者我在这里遗漏了什么?
注意:我还尝试了以下字段设置:
<igDP:FieldSettings AllowHiding="Always"
AllowResize="True" CellWidth="{Binding Path=DataContext.GetDynamicWidth}" />
这也不成功。
答案 0 :(得分:1)
Field不是可视树或逻辑树的一部分,因此无法绑定到DataContext。要解决此问题,您可以绑定到StaticResource。