我正在编写一个自定义Wpf控件,并且需要尽早获取对包含窗口的HwndSource的引用。在可能的情况下,这将是1)在我的控件的构造函数中,或者是2)在将控件添加到显示层次结构时。

我如何检测HwndSource何时/是否可用?我计划使用如下代码获取参考:

var source = HwndSource.FromVisual(this) as HwndSource;

最佳答案

您可以使用PresentationSource的AddSourceChangedHandler方法侦听PS更改的时间(HwndSource是派生的PS)。

http://msdn.microsoft.com/en-us/library/system.windows.presentationsource.addsourcechangedhandler.aspx

10-04 10:29