让 Winform 窗口悬浮的简单方式,不可思议的 TopMost 属性
来源:互联网 发布:南京软件学校 编辑:程序博客网 时间:2024/05/16 16:20
很多次设置这个 TopMost 属性会莫名的不起作用,有时又可以。一直在想是为什么会这样?
后来多次尝试,发现这个属性必须在窗体某些其他属性后设置,比如在 Height、Width 这样的属性后。
看了下 Windows 窗体应用程序启动时,主窗体的启动事件将按照以下顺序引发:
Control.HandleCreated
Control.BindingContextChanged
Form.Load
Control.VisibleChanged
Form.Activated
Form.Shown
所以在最后一个事件 Shown 里设置这个 TopMost 应该是最可靠的:
private void Form1_Shown(object sender, EventArgs e)
{
this.TopMost = true;}
注意:如果悬浮这个窗体是主窗体,还有要 Show 的子窗体,会出现子窗体被盖住的情况:
所以在 Show 出子窗体前,需要设置一下:
...
this.TopMost = false;
// 关闭子窗体后再设置 TopMost
this.TopMost = true;
0 0
- 让 Winform 窗口悬浮的简单方式,不可思议的 TopMost 属性
- 关于窗口中TopMost属性的一个问题
- C# WinForm窗体的TopMost属性设置为true时,多次点击窗体弹出事件,只会弹出一个窗体
- CSS:不可思议的border属性
- 不可思议的Css:border属性
- CSS3:不可思议的border属性
- C#Form的TopMost属性无效的问题
- 悬浮窗口的学习
- c# winform在窗体topmost=true的情况下调用exe
- 如何让你的WinForm嵌入桌面窗口最底层
- WinForm中让窗口按照指定的位置来显示
- 类似迅雷的悬浮窗口
- CDialogBar窗口的悬浮设置
- Silverlight 非模态的悬浮窗口
- Silverlight 非模态的悬浮窗口
- CDialogBar窗口的悬浮设置
- android 悬浮窗口的拖动
- android悬浮窗口的实现
- eclipse导入web项目报缺少servlet-api-2.3.jar、javax.servlet-api-3.1.0.jar等包方法解决
- Linux中7个用来浏览网页和下载文件的命令
- HBase-1.2.4 CombinedBlockCache和InclusiveCombinedBlockCache
- C语言位运算
- 启动引导页
- 让 Winform 窗口悬浮的简单方式,不可思议的 TopMost 属性
- postgresql 启动报错 pg_ctl:PID file "/database/data/postmaster.pid" does not exist
- 对回调函数的理解
- HAProxy安装配置详解
- Mysql的引擎简单介绍。
- Play源代码分析:Server启动过程
- CCF游戏
- Add Digits
- Mybatis中接口和对应的mapper文件位置配置深入剖析