如何从母模继承表单和访问控件?

时间:2010-06-13 11:15:41

标签: c#

我正在编写我的项目,我遇到了这个问题:我尝试编写一个库,我想在我的应用程序中使用它。在库中我有一个带有菜单条,工具栏,列表视图,树视图等的表单。库中的所有内容都受到保护。在我的应用程序中,我创建了从库继承的表单。我可以使用VS 2008中的设计器面板更改列表视图和树视图并添加新功能,但我无法访问菜单条和工具栏,即使它们受到保护。为什么会这样?我会感谢你的一些建议。

3 个答案:

答案 0 :(得分:1)

这是在MenuStrip和ToolStrip控件的设计者中故意完成的。这是feedback article的主题。您可以编写代码而不是使用设计器。或者考虑在InitializeComponent()调用之后合并条带,棘手以使其正确。您最好的选择可能是避免将它们放在基本表格上。

答案 1 :(得分:0)

我猜保护成员是字段 visual studio designer中的PropertyGrid仅显示属性,尝试将所需字段显示为属性 另外 - 我认为属性应声明为public,以便设计人员在属性窗口中显示它们。

答案 2 :(得分:0)

这是因为Visual Inheritence的局限性。您需要实施一种解决方法才能使其正常工作。基本上,您可以将控件公开给派生类,但是您将失去设计者支持。

The DataGridView also has this problem, and it what my blog post talks about.