Wpf 如何设置datagrid columnheader以同时显示图标和文本?
我的WPF应用程序中有一个datagrid,我想在某些列上显示一个红灯图标,以证明该列缺少一些数据。这是我在XAML中的窗口资源: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" /> <
<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>