Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用棱镜显示选项卡的标题_C#_Wpf - Fatal编程技术网

C# 使用棱镜显示选项卡的标题

C# 使用棱镜显示选项卡的标题,c#,wpf,C#,Wpf,我用的是棱镜,有一个区域是TabControl。我在TabControl.ItemTemplate上有一个DataTemplate,它被设置为IView类型的接口。IView有一个标题和描述字符串。当我使用IView调用RegisterViewWithRegion时,会添加选项卡,但标题上不会显示任何说明。我是否可以不绑定到接口上的属性,或者是否缺少其他内容 manager.AddToRegionContentZone,新PrimaryView//实现IView <TabControl x

我用的是棱镜,有一个区域是TabControl。我在TabControl.ItemTemplate上有一个DataTemplate,它被设置为IView类型的接口。IView有一个标题和描述字符串。当我使用IView调用RegisterViewWithRegion时,会添加选项卡,但标题上不会显示任何说明。我是否可以不绑定到接口上的属性,或者是否缺少其他内容

manager.AddToRegionContentZone,新PrimaryView//实现IView

<TabControl x:Name="ContentZone" cal:RegionManager.RegionName="ContentZone" Grid.Row="1" umn="0">
<TabControl.ItemTemplate>
    <DataTemplate DataType="{x:Type oasis:IView}">
        <DockPanel ToolTip="{Binding Path=Description}">
            <Label Padding="0"
                   Content="{Binding Path=Title}"
                   VerticalAlignment="Center" />

不能将DataTemplate与接口关联。它必须与类型直接关联。如果您想通过一个接口进行关联,您可以考虑实现一个DATATEMPLATESER选择器,它检查该项是否实现IVIEW并相应地返回一个DATA模板。

因此,我给出了一个镜头,但是在StReTeMeT模板方法中返回的项总是NULL。我像下面一样注册了它。断点命中,但项为空。你不是应该使用TabItem.HeaderTemplate吗?哇,不知道,很久很久以前就从Prism转移了,它还保留着吗?
{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type ContentControl}}, Path=DataContext.Title}