如何使用单选按钮"IsChecked"属性控制文本框的可见性?

Ash*_*shu 25 wpf binding wpf-controls

如何使用单选按钮"IsChecked"属性控制文本框的可见性?

我有一个两个文本框,让我们说txtbox1和txtbox2,我想基于单选按钮IsChecked属性绑定这两个文本框的visibily.下面是我正在尝试的XAML代码:

<RadioButton
                x:Name="radioBtn"
                IsChecked="True"
                Margin="5"
                VerticalAlignment="Center"
                HorizontalAlignment="Center"
                Grid.Column="0">Enter Constant Values</RadioButton>

<TextBox Visibility="{Binding Path = IsChecked, ElementName = radioBtn}" />
Run Code Online (Sandbox Code Playgroud)

我应该使用Convertor吗?请帮忙!!

Mat*_*ton 63

是的,您可以使用内置的BooleanToVisibilityConverter.

<Window.Resources>
    <BooleanToVisibilityConverter x:Key="b2v" />
</Window.Resources>
...
<TextBox Visibility="{Binding IsChecked,ElementName=radioBtn,Converter={StaticResource b2v}}" />
Run Code Online (Sandbox Code Playgroud)

  • +1,这是一个非常常见的问题,我希望这个答案成为谷歌的最爱:) (9认同)
  • 对于这方面的菜鸟,您需要一个 &lt;RadioButton Name="radioBtn" GroupName="group1"&gt;基本加密&lt;/RadioButton&gt; 系列按钮。只需将 ElementName 绑定到每个 RadioButton.Name,瞧,您的部分会根据您选择的单选按钮消失和出现。 (2认同)