繁体   English   中英

ResourceDictionary中的自定义TabItem

[英]Customized TabItem in ResourceDictionary

我已经在ResourceDictionary中创建了TabItem,并在UserControl中使用了它,但是定义的内容不会显示,为什么以及如何解决此问题?

ResourceDic:

<ResourceDictionary
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:sdk="http://schemas.microsoft.com/winfx/2006/xaml/presentation/sdk"
    xmlns:toolkit="http://schemas.microsoft.com/winfx/2006/xaml/presentation/toolkit">
    <ControlTemplate x:Key="T1" TargetType="sdk:TabItem">
        <sdk:TabItem>
            <sdk:TabItem.Header>
                <StackPanel Orientation="Horizontal">
                    <sdk:Label Content="{TemplateBinding Header}"/>
                    <Button Content="X" Margin="15,0,0,0"/>
                </StackPanel>
            </sdk:TabItem.Header>

            <toolkit:DockPanel MinWidth="600">
                <Grid toolkit:DockPanel.Dock="Left">
                    <sdk:Label Grid.Row="2" Grid.Column="0" Content="Pic:"/>
                    ...
                </Grid>
            </toolkit:DockPanel>

        </sdk:TabItem>
    </ControlTemplate>
</ResourceDictionary>

UserControl:

<UserControl x:Class="PortView" ....>
    <UserControl.Resources>
                <ResourceDictionary Source="PortfolioTemplateDictionary.xaml" />
    </UserControl.Resources>

    <Grid>
        <sdk:TabItem Template="{StaticResource T1}" Header="Page 2"/>
    </Grid  
    ...
</UserControl>

我现在使用了本文介绍的方法: 在单独的XAML中使用TabItem

<UserControl x:Class="WpfApplication19.Tab1Data"
         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
         >
    <Grid>
        <TextBlock Text="Tab Data" />
    </Grid>
</UserControl>

<TabControl>
    <TabItem Header="Tab 1">
        <tabData:Tab1Data />
    </TabItem>
</TabControl>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM