我想使用Windows窗体将一个窗口定位到特定的坐标。我认为这可以用一种简单的方法来实现,但是下面的代码根本不起作用:
public Form1()
{
InitializeComponent();
this.Top = 0;
this.Left = 0;
}
但是,当只获取该窗口的句柄时,它可以正常工作:
public Form1()
{
InitializeComponent();
IntPtr hwnd = this.Handle;
this.Top = 0;
this.Left = 0;
}
你能看到我根本没有使用那个指针。我在MSDN上找到了以下语句:“Handle”属性的值是Windows HWND。如果尚未创建句柄,则引用此属性将强制创建该句柄。
这是否意味着我们只能在创建句柄后设置窗口位置?Top/Left的设置器是否在内部使用此句柄?感谢您的澄清。
OnHandleCreated
ж–№жі•жқҘйҒҝе…Қи°ғз”Ёthis.Handle
гҖӮжҲ‘еҗҢж„ҸиҝҷеҫҲеҘҮжҖӘпјҢеӣ дёәthis.Handle
жҳҫ然дјҡжЈҖжҹҘ并еҲӣе»әеә•еұӮеҸҘжҹ„пјҢиҖҢе…¶д»–дҫқиө–дәҺеә•еұӮеҸҘжҹ„зҡ„еұһжҖ§еҚҙдёҚдјҡиҝҷж ·еҒҡгҖӮ - C.Evenhuis