我是WPF的新手,并创建了一个WPF用户控件库
我添加了一个看起来像这样的基类
public class TControl : UserControl
{
}
并希望我的所有控件都从它继承。
我有一个名为Notification的控件,看起来像
public partial class Notification : TControl
{
public Notification()
{
InitializeComponent();
}
工作正常,除非我重新编译隐藏的部分类,其中定义了InitializeComponent()重新生成并从System.Windows.Controls.UserControl继承
这给了我一个
'Twac.RealBoss.UserControls.Notification'的部分声明不得指定不同的基类
误差,
无论如何,是否强制生成的类继承自我的基类?
答案 0 :(得分:22)
您的XAML文件可能包含:
<UserControl x:Class="YourNamespace.Notification" .... >
尝试将其更改为:
<Whatever:TControl x:Class="YourNamespace.Notification" xmlns:Whatever="clr-namespace:YourNamespace" />
您得到的错误是因为在XAML中使用UserControl会告诉编译器生成一个继承自UserControl的部分类,而不是继承自您的类。
答案 1 :(得分:2)
您可以完全删除“:TControl”:
public partial class Notification : TControl
{
}
并写:
public partial class Notification
{
}
相反,由于基类是在XAML部分中定义的,正如保罗写的那样。