一、句柄问题
Win32/WinForm应用,每个窗体及窗体上每个空间都可以被看做一个窗体,他们有自己的句柄。可以通过调用
SetParent(hwnd) Api来设置其父对象。
WPF应用,一个窗体仅具有一个单一的句柄,嵌套在窗体上的控件,不具有单独的句柄。通过窗体窗口句柄调用的Api不被支持。
二、事件序列问题
§WPF应用的事件序列不同于WinForm / Win32 ,无法像WinForm / Win32那样确定事件序列。
对于WinForm / Win32事件序列如下:
假设在您的窗口上有三个控件, 它们的顺序为cb_ok,sle_1 和dw_1。 如果您使用OpenSheet() 函数将该窗口作为表单打开, 您将得到以下的事件序列:
cb_ok::constructor
sle_1::constructor
dw_1::constructor
window::open
window::show
window::resize
window::activate
cb_ok::getfocus
如果您打开一个SDI窗口,您将得到以下的事件序列:
cb_ok::constructor
sle_1::constructor
dw_1::constructor
window::open
window::activate
cb_ok::getfocus
window::show
window::resize
而WPF中无法确定事件序列。
阅读(2292) | 评论(0) | 转发(0) |