2017-04-08 69 views
-1

如何隱藏和顯示,如果管理員登錄然後一個標籤顯示,否則標籤是隱藏的{如何解決它}?標籤隱藏和顯示使用xaml和mvvvm

XAML代碼

<StackLayout IsVisible="{Binding IsAdminTrue}"> 
<Label Text="is_professional"></Label> 
</StackLayout> 

視圖模型代碼

public void IsProfessional() 
    { 
     if (CurrentUser.IsAdmin!= true) 
     { 
      IsAdminTrue= false; 
     } 
     else 
     { 
      IsAdminTrue= true; 
     } 
    } 
+0

你想隱藏標籤或顯示是或否是專業?你爲什麼要改變堆棧佈局的可見性?你需要改變標籤的權利? – Krishna

+0

IsAdminTrue(bad name btw)的代碼是什麼?你在視圖模型上實現INotifyPropertyChanged嗎?您是否在IsAdminTrue設置器上發送PropertyChanged事件? –

回答

0

應設置Visibility屬性上的標籤,而不是StackLayout。您可以將IsAdminTrue更改爲IsAdminVisible(類型可見性),也可以使用BooleanToVisibility轉換器。第二種選擇通常是首選方法。

當然,如果IsAdminTrue不會引發PropertyChanged,這些都不重要。

0
public void IsProfessional() 
{ 
    if (CurrentUser.IsAdmin!= true) 
    { 
      lblNo.Visibility= Visibility.Visible; 
    } 
    else 
    { 
      lblNo.Visibility = Visibility.Hidden; 
    } 
} 

這裏lblNo是一個標籤。