如何设置TabItem标头的最大宽度?

时间:2014-04-14 20:41:49

标签: c# wpf tabcontrol tabitem

您好我需要为标签控件的标题指定一个静态。名称是动态生成的,所以我可以得到150个字符的东西。 。 。 。我知道我可以把字符串用前10个字符或类似字符剪掉,但我不想要这么简单:P

P.D

This answer 对我的问题不起作用,实际上什么也没做。

3 个答案:

答案 0 :(得分:2)

<TabControl>
    <TabItem>
        <TabItem.Header>
            <TextBlock Width="100" Text="slad asdljlajksdflajsdf;ljlj;asdlljsaldkjlasdfjkl"/>
        </TabItem.Header>
    </TabItem>
    <TabItem>
        <TabItem.Header>
            <TextBlock Width="75" Text="slad asdljlajksdflajsdf;ljlj;asdlljsaldkjlasdfjkl"/>
        </TabItem.Header>
    </TabItem>
</TabControl>

答案 1 :(得分:0)

设置 TextBlock.MaxWidth 对我来说很好。我在 ItemTemplate 中使用它,例如

<TabControl.ItemTemplate>
    <DataTemplate DataType="viewModels:ITabViewModel">
        <TextBlock Text="{Binding DisplayName}" ToolTip="{Binding ToolTip}"
            TextTrimming="CharacterEllipsis" MaxWidth="150" />
    </DataTemplate>
</TabControl.ItemTemplate>

答案 2 :(得分:0)

另一种可能的解决方案:

    <TabControl>
        <TabControl.Resources>
            <Style TargetType="{x:Type TabItem}">
                <Setter Property="HeaderTemplate">
                    <Setter.Value>
                        <DataTemplate>
                            <TextBlock Text="{Binding}" MaxWidth="200" />
                        </DataTemplate>
                    </Setter.Value>
                </Setter>
            </Style>
        </TabControl.Resources>
    </TabControl>