我想在xaml中的那两个控件之间使用DataBind我是怎么做到的?
<MenuItem Header="_Log" IsCheckable="True"/>
<TextBox Name="_commandsRichTextBox" ,Visibility="Collapsed"/>
我写了一个转换器:
class BoolToVisibilityConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
if (targetType != typeof(Visibility))
throw new InvalidOperationException("The target must be a Visibility");
return (bool)value ? Visibility.Visible : Visibility.Collapsed;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
}
我现在遇到连接所有问题的问题。
感谢帮助。
答案 0 :(得分:2)
已有一个转换器:BooleanToVisibilityConverter
<Window.Resources>
<BooleanToVisibilityConverter x:Key="converter"/>
</Window.Resources>
<!-- ... -->
<MenuItem Name="mi" Header="_Log" IsCheckable="True"/>
<TextBox Name="_commandsRichTextBox" Visibility="{Binding IsChecked, ElementName=mi, Converter={StaticResource converter}}"/>
我只建议从控件到控件的绑定,如果你可以确定数据保留在视图中,否则创建一个可绑定属性并将两个控件绑定到它,MenuItem将更改值,TextBox将作出反应。