多个 WindowsFormsHost 叠加顺序调整
工作中遇到多个 WindowsFormsHost 包装的控件叠加顺序的调整问题,用了 BingToFront 和 BringToBack,不起效。后来在研究 AvalonDock 控件源码时发现其内部类似问题的处理是调用 Win32 的一个API(BringWindowToTop)解决的。效仿之,解决了我的问题。
函数定义如下:
[DllImport("user32.dll")]
[return: MarshalAs(UnmanagedType.Bool)]
public static extern bool BringWindowToTop(IntPtr hWnd);
hWnd 直接传WindowsFormsHost.Handle,试过传其内部定义的Panel.Handle,显示为一条白线(没深究)。每调用一次,会将当然句柄的WindowsFormsHost置于最上层,如果有其他WindowsFormsHost出现在当然控件位置会将其覆盖,如需一直保持在最上层,再次调用此函数即可。
工作笔记,欢迎讨论。
多个 WindowsFormsHost 叠加顺序调整的更多相关文章
- C# WinForm控件之Dock顺序调整
最近被.net winform中的控件布局搞困惑了,由于控件都是使用Dock方式的,操作起来也是比较方便,如果最大化,窗口大小调整等,都可以随着窗口大小的变化而变化. 但问题是,.net winfor ...
- Winform Dock顺序调整
在布局的时候,当一个窗体内有多个控件使用了Dock属性来布局,Dock顺序的调整: 最近被.net winform中的控件布局搞困惑了,由于控件都是使用Dock方式的,操作起来也是比较方便,如果最大化 ...
- Dubbo的Filter链梳理---分组可见和顺序调整
前言: 刚刚写了篇博文: Dubbo透传traceId/logid的一种思路, 对dubbo的filter机制有了一个直观的理解. 同时对filter也多了一些好奇心, 好奇filter链是如何组织的 ...
- intellij import包 顺序调整
intellij中自动import的包顺序与eclipse不太一致,可以参照以下方式进行调整: eclipse中(笔者用的是eclipse luna)导入包的顺序依次是: javajavaxorgco ...
- 列拖拽顺序调整-sortable.js使用
最近在做一个单表统计功能,涉及到一个查询列配置,但是查询出来的列顺序,可以进行配置,通过写列的排序当然阔以,但是方法就不美丽了.所以,在网上搜了一下拖拽的组件,最终定位Sortable.js,简单易用 ...
- ecshop商品详情相册顺序调整
更改相册顺序为根据id升序: 找到/include/lib_goods.php 821行: 修改为: $sql = 'SELECT img_id, img_url, thumb_url, img_de ...
- PyQt主窗体设置停靠窗口(QDockWidget)的叠加顺序
PyQt提供了方便的停靠窗口控件,我们可以很方便的编写一个停靠窗口,代码和效果如下: # -*- coding: utf-8 -*-from PyQt4 import QtGui, QtCore cl ...
- IntelliJ IDEA导入包的顺序调整和按包类型分类(保持和Eclipse一致)
调整的内容如下: 空行 import java.* 空行 import javax.* 空行 import com.* 空行 import all other imports 空行 import st ...
- 在oracle表中增加、修改、删除字段,表的重命名,字段顺序调整
增加字段语法:alter table tablename add (column datatype [default value][null/not null],….); 说明:alter table ...
随机推荐
- VLC编译
http://blog.csdn.net/hdh4638/article/details/7602321 1 下载代码 ki.videolan.org/VLC_Source_code git colo ...
- j2ee消息中间件
http://blog.csdn.net/apanious/article/details/51014396
- Ubuntu14.04 安装CUDA7.5 + Caffe + cuDNN
本系列文章由 @yhl_leo 出品,转载请注明出处. 文章链接: http://blog.csdn.net/yhl_leo/article/details/50961542 花了一天时间,在电脑上安 ...
- js 文档加载完成之后执行 备用
//文档加载完成之后执行 (function(){ var _globeCallback; window.$$ = function(callback){ _globeCallback = callb ...
- spring的启动过程就是创建ioc容器的过程
1. spring简介 spring的最基本的功能就是创建对象及管理这些对象之间的依赖关系,实现低耦合.高内聚.还提供像通用日志记录.性能统计.安全控制.异常处理等面向切面的能力,还能帮我们管理最头疼 ...
- [MongoDB实战]Part1 起步
本书的这部分对MongoDB进行了一个大致的简介.包括了Javascript Shell和Ruby驱动,这俩都有例子 在第一章,我们将了解到MongoDB的历史,设计目的和实际使用的场景.我们还将了解 ...
- pl/sql sql窗口允许输出和允许变量替换
pl/sql sql窗口允许输出和允许变量替换 允许输出:类似在命令窗口中输入的 setserveroutput on; 允许变量替换:如果点击了这个,类似于执行 set define off命令 在 ...
- NYOJ_94 cigarettes 递归VS迭代
题目地址 分析: 英文题事实上看懂意思和正常的也都差点儿相同.就算有几个单词不认识也无伤大雅. 一共同拥有n支烟,每天抽k支. 每抽完k支,会得到一仅仅. a组数据. 输入n k的个数.输出一共抽了 ...
- Access restriction: The method createJPEGEncoder(OutputStream) from the type JPEGCodec is not access
准备使用Java进行图片压缩的时候,使用 import com.sun.image.codec.jpeg.*; 结果出现错误: Access restriction: The method creat ...
- phpmyadmin客户端多服务器配置
修改libraries/config.default.php 545行,添加 $cfg['Servers']['2'] = $cfg['Servers'][$i];$cfg['Servers']['2 ...