【发布时间】:2014-07-22 09:36:29
【问题描述】:
我希望创建一个不包含 BackgroundImage 属性的自定义用户控件。
我知道您不能(显然没有可行的解决方案)创建一个继承另一个控件的控件然后删除公共属性,但是,我有以下代码
Public Class Board
End Class
即使我没有“继承”任何其他控件,它仍然有大量我不希望拥有的属性。我能够使用 Visual Basic 6 创建一个 100% 自定义控件,它不包含任何我不想包含的属性。
如何在 VB.NET 2012 中实现相同的目标(无需使用 VB6 或“过时”代码)
我已经看到设计的控件不具有此属性,因此我只能假设这是可能的——只是没有关于该主题的文档,并且与此平行的任何主题都是模糊的或无功能的。
【问题讨论】:
-
你看到什么样的道具?由于 Control 已经有 BackGroundImage,您可能必须从 Component 开始。
-
为什么不覆盖该属性,将其设置为只读并设置 EditorBrowsableState.Never
-
它不会显示在属性窗口中,但是如果你使用它,智能会在代码中看到它......很糟糕,但这就是你继承另一个控件时得到的结果。
-
Mr.CoD -- 我已经研究过这些例子。关于“EditorBrowsableState”等的简单事实是它们不可用——尤其是在 [blah(bool)] function () .... 的上下文中
-
@Plutonix - 不知道你的意思。我看到了很多属性,我创建了 UserControl 作为它自己的项目作为 WinForms UserControl 项目类型。
标签: vb.net winforms user-controls