12

ビューを最初に開いたときにデフォルトのサイズを設定する必要がありますが、ビューはユーザーが展開できるようにする必要があります。(他の理由により、WindowManager で SizeToContent プロパティを使用できません。)

これはよくあることですが、デフォルトのウィンドウ サイズを設定するための推奨される方法は何ですか?

4

5 に答える 5

6

この投稿が作成された時点でこれが当てはまるかどうかはわかりませんが、今フォローしている人にとっては、アプリのブートストラッパーで CaliburnMicro のウィンドウ サイズを簡単に設定する方法です。私のコードは、起動時に前回の終了時と同じウィンドウのサイズを保持するように設計されています。終了時に画面の高さ/幅を設定プロパティとして保存し、起動時にここで取得します (現在の画面サイズを超えないようにチェックします)。

AppBootstrapper.cs

     protected override void OnStartup(object sender, System.Windows.StartupEventArgs e) {

        double width = Settings.Default.screen_width;  //Previous window width 
        double height = Settings.Default.screen_height; //Previous window height

        double screen_width = System.Windows.SystemParameters.PrimaryScreenWidth;
        double screen_height = System.Windows.SystemParameters.PrimaryScreenHeight;

        if (width > screen_width) width = (screen_width - 10);
        if (height > screen_height) height = (screen_height-10);

        Dictionary<string, object> window_settings = new Dictionary<string, object>();

        window_settings.Add("Width", width);
        window_settings.Add("Height", height);

        DisplayRootViewFor<IShell>(window_settings);
    }
于 2016-08-23T00:18:51.217 に答える
3

推奨されるアプローチかどうかはわかりませんが、UserControlブートストラップ/表示するWindow代わりに、代わりにブートストラップ/表示してから、高さ、幅などを設定できます。

于 2013-05-06T23:36:02.613 に答える