私のアプリは、起動時に MainWindow にユーザー コントロールを読み込む必要があります。ただし、ユーザーコントロールの初期化は遅いです。(ビジネスデータをロードするためではなく、すでに UI をビジネスレイヤーから分離しています)
私がやりたいのは、ユーザーコントロールの初期化を待っている間、ビジーインジケーターが表示され、ユーザーコントロールの初期化が完了すると消えます。
現在、MainViewModel に IsBusy プロパティがあり、MainWindow の busyindicator にデータバインドされています。
子ユーザー コントロールは、コンテンツ コントロールを介して表示されます。
presenter.Content = new ChildUserControl();
//presenter is the contentcontrol in MainWindow
ただし、ビジー インジケータの初期化と表示の両方を同時に実行するにはどうすればよいでしょうか。この問題を処理するには、別のスレッドが必要なようです。
ただし、メイン UI スレッドにビジー インジケーターを表示させながら別のスレッドで初期化を実行しても機能しません。これは、別のスレッドの子コントロールをその親コントロール (この場合は MainWindow) 内に配置できないためです。
それに関するアイデアはありますか?