2010-03-05 2 views
2

Мне не удалось найти много в этом месте. Позвольте мне начать с того, что я не хочу использовать старую Windows Form. Я хочу добавить новое окно WPF в проект addin 2007 Outlook 2007 в visual studio 2008. Шаблон окна WPF, однако, не отображается. Я следовал этому руководству: http://msdn.microsoft.com/en-us/library/bb410039.aspx, в котором даже было изображение того, как вы можете добавить новое окно wpf в ваш Outlook 2007 addin. Единственная проблема заключается в том, что это для visual studio 2005. Конечно, Microsoft не удаляла эту способность из visual studio 2008. Я должен делать что-то неправильно.Visual Studio 2008 Outlook 2007 AddIn с окном WPF

Есть ли у кого-нибудь идеи или предложения о том, где я могу идти отсюда?

Я также не могу найти аналогичный учебник по msdn, используя visual studio 2008, что также было бы полезно.

ответ

5

(не ответы полностью переписан)

Вы правильны, VS 2008 больше не перечисляет «окна WPF» шаблон в надстройке. К счастью, он по-прежнему отображает шаблон WPF User Control. Используй это. Это добавит необходимые ссылки на проект.

Затем замените содержимое сгенерированного файла XAML (в моем случае это UserControl1.xaml) на то, что у вас на рисунке 5 (+ конечный тег). Вместо объявления UserControl у вас теперь есть окно в XAML. Вам также необходимо отредактировать сгенерированный файл C#. Замените имя класса (для меня это UserControl1) по имени в учебнике (Window2) и его конструкторе. Измените вывод из UserControl в Window. Вот конечный результат:

public partial class Window2 : Window { 
    public Window2() { 
     InitializeComponent(); 
    } 

Это очень важно, что пространство имена и имя класса в .cs соответствуют й: объявлению класса в XAML.

Теперь, следовать тому, что учебник говорит (не забывая при этом адаптировать путь к файлу изображения, в противном случае он не работает оригинальный строка в учебнике:.

imageSource.UriSource = new Uri(@"C:\Fulvio\img\yast_suse_tour.png"); 

Установите путь к существующий файл на жестком диске.

А потом он работает!

Я должен добавить, что этот учебник был написан до VS был дизайнер XAML. он больше не нужен, чтобы добавить элементы управления вручную, как учебник делает Добавьте пользовательский элемент управления, измените его на окно a затем используйте панель инструментов и перетащите & элементы управления отбрасыванием, например, вы можете использовать.

Но что касается создания надстройки надстройки, учебник замечательный.

+0

Я немного смущен. Моя проблема заключается в том, что я не могу добавить форму wpf в проект. Он не отображается в шаблонах, когда вы делаете новый элемент. Мне кажется, что в статье msdn добавлена ​​форма wpf, а не одна из окон. Я близок к простому отказу и добавлению формы окна, которая появляется в шаблонах. Это похоже на действительно полезный учебник.Я встречал вопросы в разных местах, задавая одно и то же, почему окно wpf не появляется в добавлении новых элементов. Никогда не бывает ажурных. – 249076

+0

Вы правы, я прочитал статью слишком быстро (раздел, создающий форму, называется «Создание формы окна», которую я интерпретировал как «Создание WinForm»). Я пробую учебник, и я вернусь к вам. Обратите внимание, что при добавлении элемента в проект присутствует шаблон управления пользователя WPF. – Timores

+0

Спасибо за помощь. В конечном итоге я начал искать способы добавления форм wpf в любой проект. Я нашел работу, которую я опубликовал в качестве ответа. Это связано с использованием этого пользовательского элемента управления WPF и просто замены всего окна. Затем я смог добавить код, чтобы показать окно. – 249076

-1

Мне действительно не нравится это решение, но оно работает. Я нашел http://www.i-think22.net/archives/2008/08/05/adding-wpf-windows-to-an-existing-windows-form-project/. В этом сообщении говорится о добавлении формы wpf в существующий проект формы Windows. Я просто добавил пользовательский элемент управления wpf, который был единственным вариантом, который он дал. Затем я переименовал usercontrol в окно. Обновлены ссылки, и он работает.

Единственное, что мне не нужно было делать ... Я все еще надеюсь, что кто-то еще придумает что-то лучшее.

+0

Я понятия не имею, о чем вы говорите, но мое решение работает нормально только с wpf – 249076