我习惯于在Visual C++中工作。在学习C#.NET时,我倾向于尝试找到在VC++中完成事情的等效方法。C#.NET - 如何从现有的Windows窗体控件继承
当我在C++中有一个按钮时,为了完全控制它,我创建了一个派生自CButton的类(相当于.NET中的System.Windows.Forms.Button),然后将此类设置为我的类型按钮,以获取所有事件和覆盖路由到我的代码。
在C#中,我还没有真正找到相同的方法来做到这一点。似乎没有办法设置应该从哪个类创建控件,而且我甚至都没有试图替换创建该对象的自动生成的代码,因为它可能会在下一分钟被丢弃。
使用我自己的类来控制用户控件的正确方法是什么?
编辑:我应该说明我有兴趣将我的自定义类添加到现有项目。到目前为止,大多数响应或者提供了将其添加到现有项目的非工作方式,或者使用组件(DLL)创建外部库的方式,但对于我的特定情况来说这有点矫枉过正。
它实际上并没有发生在我身上。尽管我是从一个控件派生出来的,但是工具箱中没有任何东西出现。您提供的文章似乎只包含了自定义控件的创建,即新类型的控件。这不是我想要的,而是从现有的控件继承,以便将事件等路由到我的代码中。 – sharkin 2009-09-29 11:45:57
重新阅读文章并寻找“Format Mask Control”。这向您展示了如何使用继承。他们正在扩展一个常规的.net文本框来添加额外的功能。 – Joepro 2009-09-29 11:48:59
另外,在您的派生类在工具箱中可用之前,您必须构建您的项目。 – Joepro 2009-09-29 11:49:44