MyUserControl不能是XAML文件的根,因为它是使用XAML 定义的

可能重复:
inheritance自WPF中的UserControl

我正在尝试创建一个WPF用户控件,该控件派生自另一个用户控件,我也定义了它。

 

这是WelcomeScreen.cs的样子:

 public partial class WelcomeScreen : NavigationControl { public WelcomeScreen() { this.InitializeComponent(); } } 

当我编译它时,我得到以下错误:

‘myNamespace.NavigationControl’不能是XAML文件的根,因为它是使用XAML定义的。

我究竟做错了什么?

你并不打算这样做,错误告诉你。

此外,使用XAML设置Content ,如果在派生控件中再次设置它,则会丢失之前定义的所有内容。 如果您想要inheritance和可重用性,请使用自定义控件(并创建相应的ControlTemplate )。

请参阅MS知识库文章: http : //support.microsoft.com/kb/957231 。 不支持在XAML中派生用户控件; 您必须在代码中派生用户控件。