Wpf 如何设置datagrid columnheader以同时显示图标和文本?

Wpf 如何设置datagrid columnheader以同时显示图标和文本?,wpf,templates,datagrid,columnheader,Wpf,Templates,Datagrid,Columnheader,我的WPF应用程序中有一个datagrid,我想在某些列上显示一个红灯图标,以证明该列缺少一些数据。这是我在XAML中的窗口资源: <DataTemplate x:Key="RedTemp"> <Image Source="/MyApp;component/Images/red.png" Height="9" Width="9" HorizontalAlignment="Right" /> <

我的WPF应用程序中有一个datagrid,我想在某些列上显示一个红灯图标,以证明该列缺少一些数据。这是我在XAML中的窗口资源:

<DataTemplate x:Key="RedTemp">
    <Image Source="/MyApp;component/Images/red.png"
           Height="9"
           Width="9"
           HorizontalAlignment="Right" />
</DataTemplate>
但当我运行应用程序时,datagrid在列上显示红灯,但列标题文本消失


有没有解决此问题的方法?

您应该修改数据模板,使其具有文本块,例如:

<DataTemplate x:Key="RedTemp">
    <Grid>
        <Grid.ColumnDefinitions>
            <ColumnDefinition />
            <ColumnDefinition />
        </Grid.ColumnDefinitions>
        <TextBlock Text="{TemplateBinding Content}"  />
        <Image Source="/MyApp;component/Images/red.png"
               Height="9"
               Width="9"
               HorizontalAlignment="Right"
               Grid.Column="1"
               />
     </Grid>
</DataTemplate>

我还没有测试过这个

编辑:在2个UI元素周围添加了一个面板。

如果您今天想要更好的答案,您应该看看。我现在得走了。
<DataTemplate x:Key="RedTemp">
    <Grid>
        <Grid.ColumnDefinitions>
            <ColumnDefinition />
            <ColumnDefinition />
        </Grid.ColumnDefinitions>
        <TextBlock Text="{TemplateBinding Content}"  />
        <Image Source="/MyApp;component/Images/red.png"
               Height="9"
               Width="9"
               HorizontalAlignment="Right"
               Grid.Column="1"
               />
     </Grid>
</DataTemplate>