c# - Form.TopMost 有时有效

标签 c# winforms winapi

似乎最顶层的属性有时会将我的应用程序置于所有其他应用程序之上,但在我的整个测试过程中,它一直很奇怪,因为有时它可以工作并且窗口保持在所有其他(外部应用程序)窗口之上,但有时它什么都不做全部。我什至尝试通过调用 setWindowLong() 的 Win32 API 设置它来使用 WS_EX_TOPMOST 标志。他们都没有将窗口保持在顶部。除了使用 topmost 之外,还有另一种方法可以将窗口保持在每个打开的窗口之上吗?或者关于 topmost 我还应该了解其他什么吗?

最佳答案

我只是用这个:

form.TopLevel = true;
form.TopMost  = true;

这使得窗口处于顶层(即它没有父窗口并且表现为应用程序的主要形式),然后确保它位于最顶层(即显示在所有其他非最顶层窗口之上)。它一直很有效。

请注意,我在显示窗口之前执行此操作。

关于c# - Form.TopMost 有时有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2267161/

相关文章:

c# - 将页面从 pdf 文件复制到新文档

c# - 进行服务调用时 Request.InputStream 为空

c# - 生成缩略图的最有效方法是什么?

c# - 标签文本向上移动

c# - 将 Windows Mobile 6 窗体带到前面

c# - 将 ObervableCollection 绑定(bind)到 ListBox

.net - 将表单的一个实例的 TextBox 控件的更改值更新到所有实例

影响窗口标题的 C++ 指针问题

c++ - Windows 防火墙 C++ API - 如何正确清理 COM 资源?

c++ - 关于windows 一个窗口的绘制周期