在代码后面设置图像没有显示在wpf数据网格列中

本文关键字:数据 wpf 数据网 网格 显示 代码 设置 图像 | 更新日期: 2023-09-27 18:02:29

我有一个数据模板显示图标在数据网格列。我在代码后面设置了图像源。但不知何故,图像在运行时没有显示在网格中。我错过什么了吗?

<DataTemplate x:Key="iconTemplate">          
  <Image/>
</DataTemplate>

背后的代码
var cellTemplate = (DataTemplate)Resources["iconTemplate"];
var image = cellTemplate.LoadContent() as Image;
image.Source = new BitmapImage(new Uri(@"C:'images'16x16'image.png"));
column.CellTemplate = cellTemplate;

在xaml中设置数据网格模板列的单元格模板。

<DataGrid.Columns>
  <DataGridTemplateColumn Header="Comments" CellTemplate="{StaticResource iconTemplate}"/>
</DataGrid.Columns>

在代码后面设置图像没有显示在wpf数据网格列中

LoadContent在这里没有帮助:

将模板的内容作为对象的实例加载,并返回该内容的根元素。

类型:System.Windows.DependencyObject
内容的根元素。多次调用此方法将返回单独的实例。

此外,你不能修改datatemplate,因为它们一旦被使用就会被密封。您可以将DataTemplate作为DynamicResource引用,并在运行时完全替换旧模板。