2014-05-15 125 views
0

我有一個Button,我希望按鈕只有在Condition A == trueCondition B == true時纔可見。windows phone綁定到兩個屬性

現在,我的viewModel已經有兩個屬性,其返回類型爲boolean
那麼,這可能與XAML Binding實現呢?

回答

0

如果你希望你的按鈕是可見取決於兩個屬性,然後在這種情況下,它會更好,你在你的視圖模型做出visibility屬性,並綁定該屬性到按鈕Xaml中的可見性屬性

例如: -

在視圖模型創建Visibility屬性 -

private Visibility _visBtn = Visibility.Collapsed; 

    public Visibility VisBtn 
    { 
     get { return _visBtn ; } 
     set 
     { 
      _visBtn = value; 
      RaisePropertyChanged("VisBtn "); // INotifyPropertyChanged Implemented 
     } 
    } 

你只是按照你的邏輯設置該屬性。如: -

If(Condition A == true && Condition B == true) 
    VisBtn = Visibility.Visible; 

現在綁定這個屬性按鈕在XAML像 -

<Button Content="My Button" Visibility="{Binding VisBtn }" /> 

注意: - 確保您已實現INotifyPropertyChanged的在您的視圖模型和XAML中頁的DataContext正確設置爲相應的Viewmodel

第二種情況: - 如果您想設置一個布爾屬性的基礎上的按鈕能見度那麼你就可以實現BooleanToVisibility轉換器該轉換器映射布爾屬性可見性的類型。

然後How to implement boolean to visibility Converter幫助你。