.net - 停止移动 Winforms 窗口的最巧妙方法是什么

标签 .net winforms desktop-application

我们有一个 WinForms 应用程序,它在一些工业设备的触摸屏上运行。由于今天无法更改的历史原因,显示的窗体具有正常的 Windows 标题栏。

我们想阻止使用鼠标(即触摸屏)的人通过拖动标题栏来移动窗口。我们不关心是否有其他方法可以使用键盘移动窗口。

实现此目标的最优雅方法是什么?如果标题栏上有鼠标按下,我可以考虑尝试颠覆鼠标消息(尽管乍一看 NC HitTest 在 Winforms 中似乎并不完全明显),我可以考虑以某种方式响应 Move 消息恢复窗口位置。

但这两个看起来都很笨重,我觉得我缺少一些优雅而明显的东西。

最佳答案

我认为 Nc 消息仍然有效。 Syncfusion 的 windows 窗体常见问题解答具有您需要的代码。我会粘贴一个链接,但我在 iPhone 上没有复制粘贴(提示,提示!)

关于.net - 停止移动 Winforms 窗口的最巧妙方法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/233379/

相关文章:

c# - 使用 Simple Java Runner 的具有多个模块的 Sonar C# 项目

c# - 与用于键入密码的文本框相关的问题

c# - DataGridView Winform 中的文本框自动完成

c# - 单选按钮作为一组在不同的面板中

java - 从基于 Web 的应用程序到基于桌面的应用程序的通信

javascript - 如何使用 Electron 注册可在焦点之外使用的键盘快捷键?

c# - 了解 C# 中具有 "ContinueWith"行为的异步/等待与等待

c# - 用于多个支付网关的最佳模式

java - NetBeans 中表的 Swing Bean 绑定(bind)

javascript - 使用 Javascript 填充数据以折叠