怎样在C++中取得WPF窗体的句柄

starssn 2011-01-27 10:50:28
WPF的窗体 能不能通过findwindow 找到呢, 我现在不知道怎么办了? 各位大虾帮帮忙!
...全文
214 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
linnda 2011-09-16
  • 打赏
  • 举报
回复
你好,我也想找到WPF的窗体句柄,然后,我要通过窗体显示视频
starssn 2011-01-28
  • 打赏
  • 举报
回复
还有些问题没有解决 , 不过差不多了, 用的是sourceHWND 和 windowFormHost 感觉还可以, 就差API得操作了, 呵呵。
iambic 2011-01-27
  • 打赏
  • 举报
回复
自己先用WinSpy++试试。WinSpy++都找不出来就别白费力气了。另外WPF这些控件库口有自己的一套可访问性机制,但是这套机制未必能对应到HWND。
  • 打赏
  • 举报
回复
在 Win32 窗口中承载 WPF 的关键是使用 HwndSource 类
此类在 Win32 窗口中包装 WPF 内容,这样 WPF 内容可以作为子窗口并入到您的用户界面 (UI) 中
  • 打赏
  • 举报
回复
获取WPF窗体句柄:
using System.Windows.Interop;
WindowInteropHelper helper = new WindowInteropHelper(window);
IntPtr hwnd = helper.Handle;

获取子控件目前没有好的办法
starssn 2011-01-27
  • 打赏
  • 举报
回复
应该用哪个方法呢, 因为WPF窗体和其他的不一样, 里面的空间当然么有了, 都是D2d画的, 我只想要个它的窗体, 把他嵌入到我的窗体Win32窗体上 , 真是痛苦!
绿色夹克衫 2011-01-27
  • 打赏
  • 举报
回复
窗体应该行吧,里面的控件就不好找了
starssn 2011-01-27
  • 打赏
  • 举报
回复
好像是用什么windowHost 来弄, 可不知道该怎么办!~ 昨天也查了好久, 今天没办法, 只能来求助了~
starssn 2011-01-27
  • 打赏
  • 举报
回复
可以说说你的做法吗? 不知道该怎么取了, 一般的窗体名称和类名称都可以用spy++钩到, 可以WPF的却弄不到, 很是郁闷
healer_kx 2011-01-27
  • 打赏
  • 举报
回复
当然可以了,但是只限于顶层窗口,里面的RichEdit或许也可以。
在Windows系统,notepad.exe(记事本)是一个“经典的”、“简洁的”文本编辑器。这个软件,没有华丽的外观,也没有繁杂的功能,仅仅是一个文本编辑小软件。虽然经过Windows系统数十年的变换,但它却保持着永恒姿态,数十年来几乎不曾改变过。曾经,VS的经典DEMO,就有它的身影,一个新建的项目,就藏有一个新建的“记事本”。然而,在WPF的项目,“记事本”却消失的无影无踪,也许是很容易实现,也许是为了革新,而不愿再传承“经典”。确实,使用WPF技术再次让“记事本”复活,确实也是一件非常容易的事情。但是,如果,使用WPF技术,再搭配当下非常流行的MVVM模式呢?复活“记事本”的难度却陡然上升至很多WPF程序员为之默默叹气。而,MVVM模式是掌握WPF的最顶级技术,MVVM模式拥有的无尽的优势,让WPF相对于过往的编程模式来说,是一种革命性的创新,从而也成为大WPF项目必须的模式。但,学习难度。。。。。。在这个《WPF记事本开发详解》的课程,赵老师带领你在WPF,从零开始一步步构建MVVM模式,直到让你亲自以WPF+MVVM的方式,让这个经典的“记事本”软件从你的手“复活”。在课程,赵老师会详细讲解WPF和MVVM的各种技巧,让你从此爱上WPF+MVVM编程。

64,654

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧