我创建了一个包含主页的应用程序。并且根据登录,我想根据用户级别向用户显示/隐藏不同的项目。 如何从其他页面访问我在主窗口中创建的菜单条。(即主窗口除外) 例如:- 我有3页
主窗口 - 主页面包含菜单条 这个窗口只有菜单条,几个文本框来显示文字。以及加载其他页面的框架控件
登录窗口 - 不同页面
用户窗口 - 登录后的另一个页面
(希望我很清楚)我正在使用框架在应用程序中导航 当应用程序启动时,它将打开登录页面。它不能显示菜单条 登录后,视用户而定,菜单项必须可见。 该怎么做
答案 0 :(得分:0)
有一个名为Visibility的属性。将其与ViewModel绑定。
这是一个文本块代码,可以通过ViewModel更改可见性。
<TextBlock Text="{Binding StatusMessage}" Visibility="{Binding IsStatusMessageVisible}" Foreground="Red" Background="#ffc8c8c8" />
public System.Windows.Visibility IsStatusMessageVisible
{
get
{
return (string.IsNullOrEmpty(StatusMessage))
? System.Windows.Visibility.Collapsed
: System.Windows.Visibility.Visible;
}
}
这实际上检查StatusMessage是否为空,然后不显示TextBlock。您可以在我的MenuStrip中使用它。
答案 1 :(得分:0)
我很抱歉它的回复很晚,但是看起来很可能对其他任何人都有用。
void MenuItemShowHideManager_OnClicked(object sender, RoutedEventArgs e)
{
var navService = NavigationService.GetNavigationService(this);
var window = new MasterPages.MyMasterWindow
{
MenuItem1 = {Visibility = Visibility.Hidden},
MenuItem2 = {Visibility = Visibility.Hidden},
MenuItem3 = { Visibility = Visibility.Visible }
};
//Navigate to your default screen
}