当子菜单打开而不关闭子菜单时修改 WPF 窗口

雷切尔·马丁

我有Window一个Menu就可以了。Menu被打开,我想改变Window的外观照看残疾。简单地用灰色覆盖它Rectangle看起来不错。这是Window标记:

    <Grid>
        <!--Content-->
        <ContentControl Content="{Binding CurrentViewModel}" />
        <!--Container to hide content-->
        <Rectangle x:Name="Disabler" Fill="#77000000" Visibility="{Binding DisableWindow, Converter={StaticResource BoolToVisibilityConverter}}" />
    </Grid>

我尝试DisableWindow在子菜单打开时设置为 true,关闭时设置为 false。但是,设置此值似乎会关闭子菜单。如何确保子菜单保持打开状态?

    private void MenuItem_SubmenuOpened(object sender, RoutedEventArgs e)
    {
        MainWindowViewModel mainVM = Window.GetWindow(this).DataContext as MainWindowViewModel;
        if (mainVM != null)
        {
            mainVM.DisableWindow = true;
        }
    }

编辑:由于Rectangle设置为可见,MouseUp 事件发生在 Disabler 上。这就是子菜单对我关闭的原因。我尝试在 上设置 IsHitTestVisible="False" Rectangle,但这使得它下面的所有内容都可以点击。有没有办法防止Rectangle窃取焦点?

在此处输入图片说明

雷切尔·马丁

我不得不在 Rectangle 上设置 IsHitTestVisible="False",即使这使得它下面的所有内容都可以点击。这是一个黑客,我希望有一个更好的修复。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

WPF:打开和关闭窗口

来自分类Dev

关闭WPF窗口

来自分类Dev

WPF主窗口在关闭子窗口后置于后台

来自分类Dev

点击不关闭WPF弹出窗口

来自分类Dev

当子窗口在 WPF 中处于活动状态时如何防止关闭父窗口

来自分类Dev

动画后关闭WPF窗口

来自分类Dev

初始窗口未关闭-WPF

来自分类Dev

在 Revit 中关闭窗口 wpf

来自分类Dev

WPF弹出窗口:以动画打开

来自分类Dev

如何检查WPF窗口的打开或关闭

来自分类Dev

用剑道菜单打开多个窗口

来自分类Dev

用剑道菜单打开多个窗口

来自分类Dev

从菜单打开窗口

来自分类Dev

如何通过wpf中页面的上下文菜单创建子窗口?

来自分类Dev

刷新子窗口后,WPF Mainwindow自动关闭。

来自分类Dev

从父视图模型关闭子窗口WPF MVMVM

来自分类Dev

关闭窗口时WPF内存泄漏

来自分类Dev

在 WPF 中打开辅助窗口时出错

来自分类Dev

WPF:以编程方式设置子窗口大小

来自分类Dev

子窗口显示在单独的窗口中(WPF应用程序)

来自分类Dev

WPF 打开弹出窗口并在弹出窗口打开时在主窗口上工作

来自分类Dev

WPF检测何时从其他窗口关闭窗口

来自分类Dev

WPF如何在菜单打开时强制菜单项绑定更新

来自分类Dev

WPF如何在菜单打开时强制更新菜单项绑定

来自分类Dev

在任务完成之前关闭WPF窗口

来自分类Dev

在任务完成之前关闭WPF窗口

来自分类Dev

WPF绑定事件在关闭窗口后发生

来自分类Dev

无法在WPF C#中关闭窗口

来自分类Dev

我的孩子窗口未在WPF中关闭