1

我想做的事情很简单,但我很难让它发挥作用。我看到了一些类似的帖子,但我仍然有疑问。

我有一个名为 mnuA 的 MenuItem 对象。我想要的只是在 C# 中以编程方式设置图标属性。我试过以下

a)mnuA.Icon = new BitmapImage{UriSource = new Uri(@"c:\icons\A.png")}; 结果:我没有显示实际的图标,而是获得了类名 ( System.Windows.Media.Imaging.BitmapImage)

b)mnuA.Icon = new BitmapImage(new Uri(@"c:\icons\A.png")); 结果:我没有显示实际的图标,而是获得了图像的路径(file:///c:/icons/A.png

我究竟做错了什么?对于这样简单的事情,我真的需要一个转换器类吗?

4

2 回答 2

6

试试这个:

Image img = new Image();
img.Source = new BitmapImage(new Uri(@"c:\icons\A.png"));
mnuA.Icon = img;
于 2008-12-10T00:42:28.790 回答
0

可能是一个很长的镜头,但尝试类似:

Uri u = 新的 Uri(...); mnuA.Icon = new BitmapImage(u);

它发生的事情似乎是您的图标正在转换为字符串。

于 2008-12-10T00:43:42.940 回答