Как показать окно WPF из открытого статического метода в проекте библиотеки классов (dll) - PullRequest
7 голосов
/ 21 сентября 2010

Я хочу использовать окна WPF в будущих приложениях вместо форм Windows.

Текущая настройка как проект библиотеки классов с общедоступным статическим методом. Я добавил элемент формы Windows в проект. В общедоступном статическом методе я создаю экземпляр класса Windows Form и использую метод ShowDialog.

Причина, по которой я использую эту настройку, заключается в том, что мне нужен собственный диалог .net в другой программе. Эта программа может вызывать только открытые статические методы в i .net.

Я решил проблему, создав проект приложения WPF и добавив в этот проект элемент класса Public. В общедоступном статическом методе я создаю класс окна класса WPF и использую метод ShowDialog. Это работает, но я хотел бы создать DLL без основного метода.

Как показать окно WPF из открытого статического метода в проекте библиотеки классов (dll)?

1 Ответ

7 голосов
/ 21 сентября 2010

Проекты библиотеки классов не имеют шаблона окна WPF, поэтому вам нужно создать UserControl, а затем изменить основной тег с <UserControl ...> на <Window ...>.Кроме того, вы можете создать окно в проекте приложения WPF, а затем скопировать файлы MyWindow.xaml* в проект библиотеки.(В этом случае вам может потребоваться исправить свойство Build Action окна в окне свойств. Visual Studio, похоже, испортило это при копировании файла XAML в библиотеку классов не-WPF.)

После этого вы можете показать его так же, как в приложении: в вашем статическом методе вы создаете экземпляр вашего Window и вызываете ShowDialog.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...