我对WPF / XAML很新。我有以下TabControl定义和一个TabItem定义:
<TabControl Grid.Row="1">
<TabItem Header="CdTe Thickness">
<Grid x:Name="CdTeThicknessGrid">
<Grid.RowDefinitions>
<RowDefinition Height=".4*" /> <!-- 40% -->
<RowDefinition Height=".6*" /> <!-- 60% -->
</Grid.RowDefinitions>
</Grid>
</TabItem>
<TabItem Header="CdTe Roughness"></TabItem>
</TabControl>
我是我的应用程序,我的TabControl将至少有十几个TabItems。每个TabItem将具有一个具有相同精确行定义的网格(如XAML中所示)。我真的不想重复这十几次(对于每个TabItem)。我模糊地熟悉模板的概念。我可以将这些行定义放在某种模板中,并为每个TabItem重用它们吗?
答案 0 :(得分:4)
您可以对所有标签页中的同一行使用相同的SharedSizeGroup执行此操作
<TabControl Grid.IsSharedSizeScope="True" Grid.Row="1">
<TabItem Header="CdTe Thickness">
<Grid x:Name="CdTeThicknessGrid">
<Grid.RowDefinitions>
<RowDefinition Height=".4*" SharedSizeGroup="FirstRow" />
<RowDefinition Height=".6*" SharedSizeGroup="SecondRow" />
</Grid.RowDefinitions>
</Grid>
</TabItem>
<TabItem Header="CdTe Roughness"></TabItem>
</TabControl>
有用的链接: