无感知WPF窗口透明加穿透
2024-09-08 18:29:48
- 在窗口的XAML文件中添加以下属性:
ShowInTaskbar="False"
WindowStyle="None"
AllowsTransparency="True"
Background="Transparent"
window.IsHitTestVisible = false; // 设置为 false,允许鼠标事件穿透 true是正常不穿
这将使窗口不显示在任务栏上,并且不会出现在Alt+Tab切换列表中。
- 在窗口的代码中,覆盖OnSourceInitialized方法并使用Win32 API来将窗口从Alt+Tab列表中删除:
protected override void OnSourceInitialized(EventArgs e)
{
base.OnSourceInitialized(e); // Get this window's handle
IntPtr hWnd = new WindowInteropHelper(this).Handle; // Get the extended window style
int exStyle = (int)GetWindowLong(hWnd, GWL_EXSTYLE); // Set the WS_EX_TOOLWINDOW style
exStyle |= WS_EX_TOOLWINDOW;
SetWindowLong(hWnd, GWL_EXSTYLE, (IntPtr)exStyle);
} // Win32 API declarations
private const int GWL_EXSTYLE = -20;
private const int WS_EX_TOOLWINDOW = 0x80; [DllImport("user32.dll")]
private static extern IntPtr GetWindowLong(IntPtr hWnd, int nIndex); [DllImport("user32.dll")]
private static extern IntPtr SetWindowLong(IntPtr hWnd, int nIndex, IntPtr dwNewLong);
最新文章
- TestNg依赖详解(三)------灵活的文件配置依赖
- jquery getJSON
- JAVA常用关键字
- Java的位运算 待整理
- 通过百度地图API显示当前位置在地图上(图标显示)--第三方开源--百度地图(二)
- [React] React Fundamentals: Owner Ownee Relationship
- Going Home(最小费用最大流)
- 创建组合索引SQL从1个多小时到1S的案例
- Dylans loves numbers
- Alpha冲刺No.1
- 【递推】ZSC1074: 数学、阿牛的EOF牛肉串
- az nginx install and other
- Redis Cluster 4.0高可用集群安装、在线迁移操作记录
- http协议以及http1.0和http1.1的区别
- Color the ball(HDU1556)树状数组
- CSS------如何让大小不一样的div顶部对齐
- 找到windows中的环境变量
- 项目笔记:导出Excel功能分sheet页插入数据
- 我对java的理解(二)——反射是小偷的万能钥匙
- NFS原理详解
热门文章
- WSL 配置输入法
- python新冠疫情分析-世界疫情数据爬取
- Vue过滤案例、按键修饰符、数据双向绑定
- STM32F4库函数初始化系列:DMA串口接收
- echarts的颜色渐变
- Win10解决文件或文件夹属性选项中只有“常规“、“以前的版本”,没有“安全”、“共享”、“位置”的方法
- 斜率优化建图学习笔记 &; JZOJ 地壳运动题解
- Linux命令使用时路径存在空格、特殊符号
- window C盘满了/文件夹太长怎么移动
- 下拉刷新 get请求 post请求 onLoad