2011-12-05 55 views
0

我想要在xaml中的這兩個控件之間建立DataBind,我該怎麼做?兩個控件之間的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(); 
     } 
    } 

,我現在必須連接一切的問題。

感謝您的幫助。

回答

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會做出反應。