如何将控件添加到自定义窗体的非客户端区域

时间:2017-06-19 11:50:58

标签: c# forms winforms custom-controls

我正在开发一个自定义表单,它提供了更多选项来自定义表单的外观。

为此,我从 System.Windows.Forms.Form 类派生了类,并重写了 WndProc(ref Message m)方法。

我已经处理了所需的窗口消息(WM_NCPAINT,WM_NCCALCSIZE等)来自定义表单。

现在我必须提供对我的自定义表单的TitleBar添加控件的支持。 (这是表格的非客户区域。)

用户可以将任何控件(如Label,Button)添加到表单的标题栏。

Controls.Add()方法将在窗体的客户区域中添加控件。

是否有可能将控件添加到表单的非客户区?

请分享您对此的宝贵意见。

此致

Mohanram。

1 个答案:

答案 0 :(得分:-2)

我已经得到了这个问题的答案。请参阅以下链接以获取答案。 这可能有助于其他人。它对我有用。
https://social.msdn.microsoft.com/Forums/en-US/349d5d86-3b59-4116-9c5b-f5240f1bed4d/how-to-add-a-control-to-the-non-client-area-of-a-custom-form?forum=csharpgeneral&prof=required 谢谢,

Mohanram