【发布时间】:2017-01-27 15:02:54
【问题描述】:
我有两个用户控件的问题,首先我有一个名为“Base”的用户控件,我想从另一个名为“MyControl”的用户控件继承它,但“Base”控件是一个 partial 类和用户控件“MyControl”只有一个 public 类,所以我在“MyControl”中使用了部分类,并使用 ElementHost 来显示“MyControl”,但我出现错误“无法将类型 MyControl 隐式转换为 System.Windows.UIElement”。
我尝试将“MyControl”添加为子级,但它显示该错误。
帮助!
编辑: 类看起来像:
public partial class Base : UserControl
{
}
public partial class MyControl : Base
{
}
我想做这样的事情:
public addControl()
{
ElementHost _host = new ElementHost();
_host.Dock = Dockstyle.Fill;
_host.Child = _myControl;
panel.Control.Add(_host);
}
错误在于 _host.Child = _myControl;。至此,_myControl 对象就被初始化了。
【问题讨论】:
-
包含代码来说明这个结构。你可以去掉内部,只显示类定义和可能的构造函数,如果你认为没有其他相关的话。
-
注意:Partial 用于定义跨多个文件的单个类。这与继承无关。
标签: c# .net inheritance user-controls partial-classes