Отображение растровых изображений в WPF через C # - PullRequest
1 голос
/ 10 декабря 2008

То, что я пытаюсь сделать, очень просто, но мне трудно заставить его работать. Я видел несколько сообщений в том же духе, но у меня все еще есть вопросы.

У меня есть объект MenuItem с именем mnuA. Все, что я хочу, это установить свойство значка программно в C #. Я пробовал следующее

а) mnuA.Icon = new BitmapImage{UriSource = new Uri(@"c:\icons\A.png")}; Результаты: вместо того, чтобы показывать реальную иконку, я получаю имя класса (System.Windows.Media.Imaging.BitmapImage)

б) mnuA.Icon = new BitmapImage(new Uri(@"c:\icons\A.png")); Результаты: вместо того, чтобы показывать реальную иконку, я получаю путь к изображению (file:///c:/icons/A.png)

Что я делаю не так? Мне действительно нужен класс конвертера для чего-то простого?

Ответы [ 2 ]

6 голосов
/ 10 декабря 2008

Попробуйте это:

Image img = new Image();
img.Source = new BitmapImage(new Uri(@"c:\icons\A.png"));
mnuA.Icon = img;
0 голосов
/ 10 декабря 2008

Может быть длинный выстрел, но попробуйте что-то вроде:

Uri u = новый Uri (...); mnuA.Icon = new BitmapImage (и);

Похоже, что ваш значок превращается в строку.

...