C# 如何在WPF中将自定义控件派生的TabItem添加到TabControl?
我想拥有自己的基本TabItem类,并使用从中派生的其他类 我在MyNs命名空间中定义基类如下:C# 如何在WPF中将自定义控件派生的TabItem添加到TabControl?,c#,wpf,user-controls,controls,wpf-controls,C#,Wpf,User Controls,Controls,Wpf Controls,我想拥有自己的基本TabItem类,并使用从中派生的其他类 我在MyNs命名空间中定义基类如下: public class MyCustomTab : TabItem { static MyCustomTab() { DefaultStyleKeyProperty.OverrideMetadata(typeof(MyCustomTab), new FrameworkPropertyMetadata(typeof(TabItem))); } } 这就是
public class MyCustomTab : TabItem
{
static MyCustomTab()
{
DefaultStyleKeyProperty.OverrideMetadata(typeof(MyCustomTab), new FrameworkPropertyMetadata(typeof(TabItem)));
}
}
这就是我为继承自它的类所做的:
MyNs命名空间中的代码隐藏:
public partial class ActualTab : MyCustomTab
{
public ActualTab()
{
InitializeComponent();
}
}
XAML:
我得到的错误是“XML命名空间“”中不存在标记'MyCustomTab'。如果我在XAML中使用TabItem
标记,则错误表明无法定义不同的基类
怎么解决这个问题?好吧,我很愚蠢,应该是这样的
<MyNs:MyCustomTab x:Class="MyNs.ActualTab"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:MyNs="clr-namespace:MyNs">
<Grid>
</Grid>
</MyNs:MyCustomTab>
<MyNs:MyCustomTab x:Class="MyNs.ActualTab"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:MyNs="clr-namespace:MyNs">
<Grid>
</Grid>
</MyNs:MyCustomTab>