您的位置:首页 > 其它

如何禁用双击窗体图标关闭窗体

2008-12-09 09:19 253 查看
这个问题来自论坛提问,.Net由于对WindowsAPI的透明度增强,很多Winform开发者都不太了解经典的win32消息方面的知识。

所有窗体上的鼠标反映都可以用WndProc拦截,除了系统菜单、标题栏、系统按纽还包括客户区。

using
System;

using
System.Windows.Forms;

using
System.Runtime.InteropServices;

namespace
WindowsApplication1

{

public
partial
class
Form1 : Form

{

public
Form1()

{

InitializeComponent();

}

[DllImport(
"user32.dll"
)]

private

static

extern
IntPtr GetSystemMenu(IntPtr hWnd,
bool
bRevert);

protected

override

void
WndProc(
ref
Message m)

{

if
(m.Msg == 0x112)

{

if
(m.WParam.ToInt32() == 61539 || m.WParam.ToInt32() == 61587)

{

Console.WriteLine(m.WParam);

return
;

}

}

base
.WndProc(
ref
m);

}

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: