重用数据模板
Reusing DataTemplates
我的 UI 中有一些 GroupBox
,我正在修改它们的 HeaderTemplate
以在文本标题之外添加图标。这是我的模板:
<DataTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Image Source="/Resources/IDCard.png" />
<TextBlock Grid.Column="1" Text="{Binding}" VerticalAlignment="Center" />
</Grid>
</DataTemplate>
这行得通,但是因为我有多个 GroupBox
es,所以我在想办法在 Window
的 Resources
中定义这个模板,然后在每个模板中引用它GroupBox
。我如何使用 ContentPresenter
(或其他任何与此相关的内容)代替上述模板中的 <Image>
控件,然后分别在每个 GroupBox
中提供实际内容(图标)?
注意:我正在寻找 XAML-only 解决方案。
您可以尝试使用 DynamicResource
查找(按照 this example 行)。
我的 UI 中有一些 GroupBox
,我正在修改它们的 HeaderTemplate
以在文本标题之外添加图标。这是我的模板:
<DataTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Image Source="/Resources/IDCard.png" />
<TextBlock Grid.Column="1" Text="{Binding}" VerticalAlignment="Center" />
</Grid>
</DataTemplate>
这行得通,但是因为我有多个 GroupBox
es,所以我在想办法在 Window
的 Resources
中定义这个模板,然后在每个模板中引用它GroupBox
。我如何使用 ContentPresenter
(或其他任何与此相关的内容)代替上述模板中的 <Image>
控件,然后分别在每个 GroupBox
中提供实际内容(图标)?
注意:我正在寻找 XAML-only 解决方案。
您可以尝试使用 DynamicResource
查找(按照 this example 行)。