当我需要为所有表单重载方法时如何保持DRY?

use*_*651 3 .net c# dry winforms

在我的所有C#表单中,我有以下代码:

protected override CreateParams CreateParams
{
    get
    {
        const int WS_EX_TOOLWINDOW = 0x80;

        CreateParams cp = base.CreateParams;
        cp.ExStyle |= WS_EX_TOOLWINDOW;
        return cp;
    }
}
Run Code Online (Sandbox Code Playgroud)

如何从我的每个表单中删除它并保持我的代码清洁?

Mat*_*zer 8

如何继承Form和覆盖整个CreateParams属性的基类呢?然后,其余的具体形式继承你的CustomForm.

应用程序中的任何表单都将共享此CreateParams实现,如果其中某些表单需要特定的实现,则具体类中的覆盖就足够了!;)