【问题标题】:How to disable ALT+F4 on vb wpf Window如何在 vb wpf 窗口上禁用 ALT+F4
【发布时间】:2017-04-10 12:19:20
【问题描述】:

我有一个自定义窗口,根据上下文显示错误或显示消息。如何禁用 ALT+F4 以防止用户关闭它,不使用事件

该窗口只需要使用其上的按钮关闭。我不希望用户能够使用 ALT+F4 关闭它。 可以使用 ALT+F4 关闭主应用程序,这没关系,但是在任何情况下都不应使用 ALT+F4 关闭此窗口。

目前我已经删除了在任务栏中显示的窗口。

【问题讨论】:

  • 唯一的原因是使用事件。为什么你不能使用它们?
  • 那么,如果这是一个 VB 应用程序,你为什么要标记 c#
  • @Smartis 因为 MVVM
  • @BugFinder 提醒
  • Alt+F4 通过事件提供给您的应用程序。为什么不能使用事件?这是一个非常奇怪和任意的要求。

标签: wpf vb.net


【解决方案1】:

使用此 XAML 捕获 Alt + F4。

    <Window.InputBindings>
        <KeyBinding Modifiers="Alt" Key="F4" Command="{Binding Path=ToDelegateCommandThatExecuteNothing}" />
    </Window.InputBindings>

像这样在 ViewModel 中创建一个 RelayCommand:

public RelayCommand ToDelegateCommandThatExecuteNothing { get; set; }

针对 ToDelegateCommandThatExecuteNothing 添加方法并将其留空或添加您要在 Alt + F4 上执行的任何操作:

ToDelegateCommandThatExecuteNothing = new RelayCommand(o => DoNothing());

public void DoNothing()
    {

    }

我的代码示例是用 C# 编写的,您可以在 VB.Net 中查看它

【讨论】:

    猜你喜欢
    • 2012-05-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多