0

我有 3 个文本框,它们的可见性取决于复选框。我想在所有文本框上设置 IsEnabled = false,当 checkbox.IsChecked = false 和 IsEnabled = true 时 IsChecked = true。如何在 XAML 中实现这种依赖关系?

谢谢。

4

3 回答 3

2

您可以在命名元素之间进行绑定,只要您绑定到依赖属性,绑定就会反映任何更改

<TextBox IsEnabled="{Binding ElementName=SomeCheckBox, Path=IsChecked}" />
于 2011-09-28T14:55:08.957 回答
1
<StackPanel>
    <CheckBox Name="Checker" />

    <TextBox IsEnabled="{Binding ElementName=Checker, Path=IsChecked}" />
    <TextBox IsEnabled="{Binding ElementName=Checker, Path=IsChecked}" />
    <TextBox IsEnabled="{Binding ElementName=Checker, Path=IsChecked}" />
</StackPanel>
于 2011-09-28T14:53:41.523 回答
1

IsEnabled将属性绑定IsCheckedCheckBox.

<TextBox IsEnabled="{Binding ElementName=NameOfCheckBox, Path=IsChecked}" />

如果您的目标是按照您的问题建议将该 bool 值绑定到Visibility,那么您还需要利用转换器,例如BooleanToVisibilityConverter

<TextBox Visibility="{Binding IsChecked, ElementName=NameOfCheckBox, Converter={StaticResource BoolToVisConverter}}" />
于 2011-09-28T14:52:53.240 回答