Caliburn Launch без App.xaml, но с загрузчиком - PullRequest
3 голосов
/ 11 мая 2011

У меня есть проект WinForms, из которого я хочу открыть окно WPF из проекта управления пользователями WPF.Но когда я создаю экземпляр окна WPF и вызываю Show (), загрузчик не загружается.В приложении Windows оно находится в App.xaml, но в проекте пользовательского элемента управления его нет.Что я могу сделать?Спасибо!

Ответы [ 2 ]

2 голосов
/ 11 мая 2011

Единственное, что достигается при наличии загрузчика в ресурсах App.xaml, - это создание загрузчика и сохранение ссылки, чтобы он не собирался мусором. Вы можете попробовать создать его как:

public class SomeClass {
    static Bootstrapper _bs = new Bootstrapper();

    ...
}

Это обеспечит инициализацию как часть статической конструкции, что происходит за некоторое время до того, как вы сможете создать экземпляр SomeClass. Возможно, вам придется поэкспериментировать, чтобы увидеть, должно ли это произойти в вашем UserControl или в вашем окне.

1 голос
/ 08 июня 2011

У меня есть консольное приложение, которое представляет графический интерфейс WPF, который я сделал с помощью Caliburn.Micro.Я представляю GUI так:

        _App = new App();
        _App.Run();

Где App.xaml содержит загрузчик, а основной поток - это STA, например:

[STAThread]
static int Main(string[] args)
{ ... }

Я знаю вашСитуация другая, но, возможно, это даст вам представление.

...