【发布时间】:2015-06-04 04:15:01
【问题描述】:
我一直在为我的问题寻找更好的答案,即使我解决了它(不是很优雅),我也想知道是否还有其他方法。 我继承了一个项目,我不能修改太多,我的意思是,我只能添加一些其他属性或覆盖方法,但不能更改基类或接口。
此项目包含一个继承 WPF 网格以修改行为的某些方面的类。我必须添加一个带有图像的新列(按代码)。每一张图片都已经存储到资源程序集中并通过静态属性声明,例如我需要的图标声明如下:
MyIcon.Source="{x:Static images:Common.Size_22.icon}"
我需要在我的专栏中使用这个图标,我尝试了通过包进行的各种声明,但没有成功。最后我决定嵌入这个通过属性发送的位图:
<mygrid:MyGridControl Model="{Binding}" Refresh="{Binding Refresh}"
CommentsImageSource="{x:Static images:Common.Size_22.icon}" />
当我创建图像单元格时,我还必须创建一个图像对象并使用 Bitmap 和 BitmapImage 之间的转换来设置源
image.Source = ToBitmapSource((System.Drawing.Bitmap)CommentsImageSource);
它有效,但我对这个解决方案非常失望,有没有更好的方法来做到这一点?我无法引用源文件以避免按属性发送位图。
【问题讨论】:
-
如果您能接受我的回答是正确的,那就太好了。谢谢!