3

WPF ユーザー コントロール プロジェクトから WPF ウィンドウを開きたい WinForms プロジェクトがあります。しかし、WPF ウィンドウのインスタンスを作成して Show() を呼び出すと、ブートストラップが読み込まれません。Windows アプリケーションでは App.xaml にありますが、ユーザー コントロール プロジェクトにはこれがありません。私に何ができる?ありがとう!

4

3 に答える 3

2

Caliburn.Micro で作成した WPF GUI を表示するコンソール アプリケーションがあります。GUI を次のように表示します。

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

App.xaml にはブートストラップが含まれ、メイン スレッドは次のような STA です。

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

私はあなたの状況が異なることを知っていますが、多分これはあなたにアイデアを与えるでしょう.

于 2011-06-08T18:08:51.630 に答える
2

App.xaml のリソースにブートストラッパーを配置することで達成される唯一のことは、ブートストラッパーのインスタンス化と、ガベージ コレクトされないように参照を保持することです。次のようにインスタンス化してみることができます。

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

    ...
}

これにより、静的な構築の一部として初期化されるようになります。これは、のインスタンスを作成する前に行われますSomeClass。UserControl または Window でそれが発生するかどうかを確認するには、実験が必要になる場合があります。

于 2011-05-11T17:32:22.833 に答える