如何从停靠面板隐藏菜单
How to hide menu from dockpanel
我想在应用程序启动时隐藏帐户菜单,成功登录后想显示帐户菜单。我试过了,但它不起作用,帐户菜单不可见。
ShellView.xaml
<Menu DockPanel.Dock="Top" FontSize="18">
<MenuItem Header="_File">
<MenuItem x:Name="ExitApplication" Header="E_xit" />
</MenuItem>
<MenuItem Header="_Account" Visibility="{Binding IsLoggedIn, Converter={StaticResource BooleanToVisibilityConverter}, FallbackValue=Collapsed}">
<MenuItem x:Name="LogOut" Header="_Log Out" />
</MenuItem>
</Menu>
ShellViewModel.cs
public bool IsLoggedIn
{
get
{
bool output = false;
if (string.IsNullOrWhiteSpace(_user.Token) == false)
{
output = true;
}
return output;
}
}
public async Task HandleAsync(LogOnEvent message, CancellationToken cancellationToken)
{
await ActivateItemAsync(_salesVM);
NotifyOfPropertyChange(() => IsLoggedIn);
}
注意: 我正在使用 visual studio 2022,.NET Framework 4.8
当 _user.token 的设置值时,通知 属性 IsLoggedIn 已更改。
我想在应用程序启动时隐藏帐户菜单,成功登录后想显示帐户菜单。我试过了,但它不起作用,帐户菜单不可见。
ShellView.xaml
<Menu DockPanel.Dock="Top" FontSize="18">
<MenuItem Header="_File">
<MenuItem x:Name="ExitApplication" Header="E_xit" />
</MenuItem>
<MenuItem Header="_Account" Visibility="{Binding IsLoggedIn, Converter={StaticResource BooleanToVisibilityConverter}, FallbackValue=Collapsed}">
<MenuItem x:Name="LogOut" Header="_Log Out" />
</MenuItem>
</Menu>
ShellViewModel.cs
public bool IsLoggedIn
{
get
{
bool output = false;
if (string.IsNullOrWhiteSpace(_user.Token) == false)
{
output = true;
}
return output;
}
}
public async Task HandleAsync(LogOnEvent message, CancellationToken cancellationToken)
{
await ActivateItemAsync(_salesVM);
NotifyOfPropertyChange(() => IsLoggedIn);
}
注意: 我正在使用 visual studio 2022,.NET Framework 4.8
当 _user.token 的设置值时,通知 属性 IsLoggedIn 已更改。