11

我正在寻求帮助,为 Visual Studio 中的继承控件设置新的默认属性值:

class NewCombo : System.Windows.Forms.ComboBox
{
  public NewCombo() { DropDownItems = 50; }
}

问题是基类属性DropDownItems设置了一个“默认”属性,该属性是一个不同的值(不是 50)。结果,当我将控件拖到窗体上时,设计器文件会得到一个明确的mycontrol.DropDownItems = 50;行。

起初,这无关紧要。但是,如果稍后我将继承的类更改为DropDownItems = 45;在构造函数中,这不会影响任何表单上的任何控件,因为所有这些设计器文件中仍然具有硬编码的值 50。重点是将价值设置在一个地方,这样我就可以应对客户改变主意。

显然,如果我在子类中创建自己的自定义属性,我可以给它自己的设计器默认属性,无论我想要什么。但在这里我想更改基础属性的默认值。有没有办法将 Visual Studio 属性应用于基类成员?还是有其他解决方法可以获得我想要的结果?

4

1 回答 1

5

在您的派生类中,您需要覆盖(或使用的阴影)有问题的属性,然后重新应用默认值属性。

于 2008-08-10T23:11:39.133 回答