如何使用 Grid.Row 属性 作为 MultiDataTrigger 条件的数据绑定路径?
How can I use Grid.Row Property as a DataBinding Path for a MultiDataTrigger Condition?
我想为 TextBox 设置一个 MultiDataTrigger,如下面的代码所示。
如果我在代码隐藏中定义的 IsNormal 属性 为 false,并且 TextBox 位于 Grid 的第二行,则它的 IsEnabled 应该为 false。
但是,关于 Grid.Row 的条件无法正常工作。
你能告诉我在这种情况下如何使用 Grid.Row 属性 作为绑定路径吗?
<Style TargetType="TextBox">
<Style.Triggers>
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType=UserControl}, Path=IsNormal}"
Value="False"/>
<Condition Binding="{Binding RelativeSource={RelativeSource Self}, Path=Grid.Row}"
Value="2"/>
</MultiDataTrigger.Conditions>
<Setter Property="IsEnabled" Value="False"/>
</MultiDataTrigger>
</Style.Triggers>
</Style>
Grid.Row
是附加的属性,所以应该是这样的:
<Condition Binding="{Binding RelativeSource={RelativeSource Self}, Path=(Grid.Row)}"
Value="2"/>
使用 (OwnerClass.AttachedProperty)
指示 OwnerClass
的 AttachedProperty
的路径。
我想为 TextBox 设置一个 MultiDataTrigger,如下面的代码所示。
如果我在代码隐藏中定义的 IsNormal 属性 为 false,并且 TextBox 位于 Grid 的第二行,则它的 IsEnabled 应该为 false。
但是,关于 Grid.Row 的条件无法正常工作。
你能告诉我在这种情况下如何使用 Grid.Row 属性 作为绑定路径吗?
<Style TargetType="TextBox">
<Style.Triggers>
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType=UserControl}, Path=IsNormal}"
Value="False"/>
<Condition Binding="{Binding RelativeSource={RelativeSource Self}, Path=Grid.Row}"
Value="2"/>
</MultiDataTrigger.Conditions>
<Setter Property="IsEnabled" Value="False"/>
</MultiDataTrigger>
</Style.Triggers>
</Style>
Grid.Row
是附加的属性,所以应该是这样的:
<Condition Binding="{Binding RelativeSource={RelativeSource Self}, Path=(Grid.Row)}"
Value="2"/>
使用 (OwnerClass.AttachedProperty)
指示 OwnerClass
的 AttachedProperty
的路径。