获取wpf窗口对应的句柄窗口

using System;
using System.Windows;
using System.Windows.Interop;
using IWin32Window = System.Windows.Forms.IWin32Window;
public class WindowWrapper : IWin32Window
{
/// <summary>
/// 窗口句柄
/// </summary>
public IntPtr Handle { get; private set; }
/// <summary>
/// 将句柄封闭为实现IWin32Window的对象
/// </summary>
/// <param name="handle"></param>
public WindowWrapper(IntPtr handle)
{
Handle = handle;
}
/// <summary> 封装为实现IWin32Window的对象
/// </summary>
/// <param name="window">WPF窗口</param>
public WindowWrapper(Window window)
{
var helper = new WindowInteropHelper(window);
System.Diagnostics.Process process = System.Diagnostics.Process.GetCurrentProcess();
Handle = process.MainWindowHandle;
Handle = helper.Handle;
}
/// <summary> 得到某个WPF窗口的窗口句柄 </summary>
/// <param name="window">WPF窗口</param>
/// <returns>窗口句柄</returns>
public IntPtr GetHandle(Window window)
{
return new WindowInteropHelper(window).Handle;
}
}

打开窗口

frmselectwx myfrmwx = new frmselectwx();
myfrmwx.Show(new Utils.WindowWrapper(this));

Wpf窗口中打开WinForm窗口的更多相关文章

  1. 解决sublime text 2总是在新窗口中打开文件

    在mac下不是很喜欢sublime text 2 总是在新窗口中打开文件,很麻烦,文件打多了,就会出现N多窗口,虽然可以直接打开当前目录可以解决,但有时候查看其它项目中的单个文件,就比较麻烦.百度一直 ...

  2. C#防止WebBrowser在新窗口中打开链接页面

    在日常的开发中,大家有时需要用WebBrowser加载URL,来实现某些功能.而这时,我们就不希望所打开的页面中的链接,在新窗口中打开,因为这样的话,实际上是用系统默认的浏览器打开了,从而脱离了你的W ...

  3. WPF MVVM从入门到精通7:关闭窗口和打开新窗口

    原文:WPF MVVM从入门到精通7:关闭窗口和打开新窗口 WPF MVVM从入门到精通1:MVVM模式简介 WPF MVVM从入门到精通2:实现一个登录窗口 WPF MVVM从入门到精通3:数据绑定 ...

  4. DEDECMS如何让栏目外部链接在新窗口中打开

    dede的栏目打开方式默认的“当前窗口打开”,可以用下面两种方法让dede栏目在新窗口中打开. 方法1. 查找模板中的head.htm 将 <li><a href='[field:t ...

  5. 解决vue-router中this.$router.push无法在新窗口中打开

    解决vue-router中this.$router.push无法在新窗口中打开 let routeData = this.$router.resolve({ path: '/consult', que ...

  6. 解决sublime text 2总是在新窗口中打开文件(标签中打开)

    在mac下不是很喜欢sublime text 2 总是在新窗口中打开文件,很麻烦,文件打多了,就会出现N多窗口,虽然可以直接打开当前目录可以解决,但有时候查看其它项目中的单个文件,就比较麻烦.百度一直 ...

  7. 如何在单独的窗口中打开 Excel 文件

    如何在单独的窗口中打开 Excel 文件 文章编号:087583     2012/11/1 18:45:29 故障现象: 如何在单独的窗口中打开 Excel 文件? 解决方案: 比较安全的方法就是直 ...

  8. Helium文档12-WebUI自动化-go_to在当前的Web浏览器窗口中打开指定的URL

    前言 go_to在当前的Web浏览器窗口中打开指定的URL 入参介绍 url def go_to(url): """ :param url: URL to open. : ...

  9. (转)C#在父窗口中调用子窗口的过程(无法访问已释放的对象)

    C#在父窗口中调用子窗口的过程: 1. 创建子窗口对象 2. 显示子窗口对象   笔者的程序中,主窗体MainFrm通过菜单调用子窗口ChildFrm.在窗体中定义了子窗口对象,然后在菜单项点击事件中 ...

随机推荐

  1. Maven打包后的文件存在中文乱码

    发现打包的js文件虽然是UTF-8格式的编码,但是有中文有乱码 可设置jvm的编码,两种方法: 在系统的环境变量中添加一个变量,名为: JAVA_TOOL_OPTIONS, 值为:-Dfile.enc ...

  2. hadoop streaming 中跑python程序,自定义模块的导入

    今天在做代码重构,以前将所有python文件放到一个文件夹下,上传到hadoop上跑,没有问题:不过随着任务的复杂性增加,感觉这样甚是不合理,于是做了个重构,建了好几个包存放不同功能的python文件 ...

  3. Spring_Four -- 团队项目设计完善&编码测试

    团队项目设计完善&编码测试 1.文档<软件设计方案说明书>github地址:https://github.com/gzyt/SRS 2.项目集成开发环境 数据库:Mysql 5.0 ...

  4. (转)Microsoft Print to PDF

    好像win10.win7 都有

  5. echarts 技巧自己的一些记录

    1.不要输出 window["echarts"].init(chart) ,会卡死. let chart = document.getElementById("chart ...

  6. c#实现文件写入数据表/以二进制流保存到数据库,并实现下载

    上传: 1.上传文件先保存到服务器   File.SaveAs(path) 2.sql(文件和sql在一个服务器上)进行保存操作: insert into File(filename,filebody ...

  7. 什么是jquery

    框架就是一个半成品,不能直接使用,需要加工处理后才可使用

  8. xftp无法用root账号登录问题

    编辑vim /etc/ssh/sshd_config文件 把PermitRootLogin Prohibit-password 添加#注释掉 新添加:PermitRootLogin yes 更改Per ...

  9. linux查看硬件详细信息dmidecode

    [root@zabbix_server src]# dmidecode|more # dmidecode 2.12 SMBIOS 2.7 present. structures occupying b ...

  10. selenium使用技巧

    标签(空格分隔): selenium 我们进行selenium的时候,就是通过webdriver,对浏览器做一些操作的: webdriver,除了find操作,之外还有哪些方法和属性呢? 1.获取当前 ...