2014-01-31 8 views
0

Привет, у меня есть ошибка парсера, когда я пытаюсь добавить значок в NotifyIcon. Это один работает отлично:Проблемы с WPF NotifyIcon

System.Windows.Forms.NotifyIcon ni = new System.Windows.Forms.NotifyIcon(); 

ni.Icon = new System.Drawing.Icon("C:\\Users\\Daniel\\Documents\\Visual Studio 
2012\\Projects\\Pies\\Pies\\main.ico"); 

Но когда я пытаюсь сделать это следующим образом:

ni.Icon = new System.Drawing.Icon("main.ico"); 

возвращает какую-то странная ParserError. Я добавил main.ico в проект. Когда я добавляю изображения в xaml, я просто использую «/image/image.jpg», но это не хочет работать таким образом. Знаете ли вы, почему?

+0

что «странно ParserError», вероятно, звучит как греческий для вас, и вы не имеете ни малейшего представления, что это значит. Но говорит нам * точно, в чем проблема. Лучше не предполагать, что мы будем так же confused о сообщении об ошибке, как и вы. –

+0

Если yuo хочет увидеть всю ошибку msg, перейдите в VS2012> новый проект> wpf C#, добавьте значок, скопируйте эти 2 полосы в общедоступный MainWindow(). – Finchsize

ответ

1

Обратите внимание, что вы пытаетесь использовать контроль WinForms в проекте WPF. И icon class from WinForms не поддерживает URI пакетов.

Поскольку вы хотите сохранить свое изображение в своей сборке, вы не можете легко получить его как значок WinForms. WPF обычно работает с классом ImageSource, и вы можете преобразовать его в значок WF (How can I convert BitmapImage to Icon?), но я бы назвал это болью.

NotifyIcon не реализован в WPF, поэтому я предлагаю попробовать это solution.

Больше detais: Can I use NotifyIcon in WPF?

0

Почему вы не добавить файл .ico в своем решении и указать ссылку на него что-то вроде этого

Попробуйте сделать это

ni.Icon = new System.Drawing.Icon(@"pack://application:,,,/Icon/main.ico"); 
+0

Это дает мне ту же ошибку: XamlParseException, я добавил этот ison уже как значок проекта. – Finchsize

+0

Обновлен мой ответ. –

+0

Я должен заменить эти запятые чем-то или просто скопировать так? В этом формате возвращается еще та же ошибка, что и раньше. – Finchsize

Смежные вопросы