wpf - 重用数据模板

标签 wpf xaml datatemplate contentpresenter

有几个GroupBox es 在我的 UI 中,我正在修改他们的 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 的解决方案。

最佳答案

您可以尝试使用 DynamicResource 查找(沿着 this example 行)。

关于wpf - 重用数据模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38589225/

相关文章:

c# - WPF 图像控件 : Trigger stops working once Source is modified in code

WPF - 使用来自另一个程序集的样式/资源

c# - 在 XAML 中将 ListBox 绑定(bind)到列表(集合)

wpf - 折叠/展开组框

wpf - DataTemplate 绑定(bind)取决于属性类型和工作属性绑定(bind)

WPF 数据模板教程

c# - C#WPF INotifyChanged值相同时不调用

c# - 如何通过隐藏编码将文本 block 放入滚动查看器中? (wpf)

c# - UWP Commandbar 到右侧

c# - 如何以编程方式访问 DataTemplate 的关联数据类型?