Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
WPF——通过代码在RadGridView中动态显示图像_Wpf_Image_Dynamic_Telerik - Fatal编程技术网

WPF——通过代码在RadGridView中动态显示图像

WPF——通过代码在RadGridView中动态显示图像,wpf,image,dynamic,telerik,Wpf,Image,Dynamic,Telerik,我有一个radgridview,它绑定到我创建的一个对象foo 对象foo具有从枚举填充的属性“status” 我有许多foo对象存储在一个集合中,我用它绑定到我的radgridview 绑定后,我得到记录,网格显示良好 我不想在网格中显示我的foo对象的“status”枚举值。相反,我希望使用单独的图像来更清楚地描述状态(并且在更少的空间中)。例如,如果foo的'status'枚举值==Open,我将显示一个打开的门,而value==Closed将是一个关闭的门。因此,同一列可以有不同的图像,

我有一个radgridview,它绑定到我创建的一个对象foo

对象foo具有从枚举填充的属性“status”

我有许多foo对象存储在一个集合中,我用它绑定到我的radgridview

绑定后,我得到记录,网格显示良好

我不想在网格中显示我的foo对象的“status”枚举值。相反,我希望使用单独的图像来更清楚地描述状态(并且在更少的空间中)。例如,如果foo的'status'枚举值==Open,我将显示一个打开的门,而value==Closed将是一个关闭的门。因此,同一列可以有不同的图像,但是来自由foo的status enum绑定的相同属性。希望这足够清楚

我已尝试在网格的RowLoaded事件中使用bitmapimage覆盖内容值。我还尝试将网格的数据类型设置为image、butmapimage和image source,但都没有用

看起来这应该比现在容易多了。。。如果图像直接来自数据库,这不会是一个问题;有很多例子。然而,动态地和通过代码来实现它仍然是一个谜


提前感谢您的帮助

显然我所需要的就是把问题贴出来

我成了一次尝试太多事情的牺牲品,而一个本应该完美运作的灵魂却没有,因为我同时在一个牢房里尝试一种风格

在上面提供的示例中,在网格的RowLoaded事件中,可以执行以下操作:

  • 从单元格内容中获取枚举值
  • 创建图像控件(System.Windows.Controls.Image img=new Image();)
  • 根据枚举值(open.png/closed.png)指定图像的源
  • 将单元格的content=设置为刚创建的图像控件
  • 当网格显示时,您应该在网格单元中看到您的图像

    您还需要确保列的数据类型设置为: 类型(System.Windows.Controls.Image)