如果不写小说就很难形成这个问题......
我在样式中有一个DataTemplate(如果重要的话,应用于TabItem),它以垂直方式提供包含两个TextBlock的Grid。
我希望能够让网格保持相同的大小(在这种情况下为高度)和第一个以TextBlock为中心的(此处为垂直方向) 第二个TextBlock已折叠(或隐藏,我不在乎)。
我怎样才能做到这一点?
这是我到目前为止(Text值是占位符,它们应该是绑定):
<Style TargetType="{x:Type TabControl}" x:Key="FlatTabControl">
<Style.Resources>
<Style TargetType="{x:Type TabItem}">
<Setter Property="HeaderTemplate">
<Setter.Value>
<DataTemplate>
<Grid>
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock VerticalAlignment="Center" Text="TOP/MIDDLE"/>
<TextBlock Grid.Row="1" Foreground="Green" Text="BOTTOM/COLLAPSED"/>
</Grid>
</DataTemplate>
</Setter.Value>
</Setter>
</Style>
</Style.Resources>
</Style>
答案 0 :(得分:0)
你的意思是这样吗?
<Style TargetType="{x:Type TabControl}" >
<Style.Resources>
<Style TargetType="{x:Type TabItem}">
<Setter Property="HeaderTemplate">
<Setter.Value>
<DataTemplate>
<Grid Width="150" Height="30">
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock VerticalAlignment="Center" Text="TOP/MIDDLE" />
<TextBlock Grid.Row="1" Foreground="Green" Text="asdsad" Height="Auto" x:Name="TextTwo"/>
</Grid>
<DataTemplate.Triggers>
<Trigger SourceName="TextTwo" Property="Text" Value="">
<Setter TargetName="TextTwo" Property="Height" Value="0"/>
</Trigger>
</DataTemplate.Triggers>
</DataTemplate>
</Setter.Value>
</Setter>
</Style>
</Style.Resources>
</Style>