6

現在、ロードする基本的なページがあり、できればコンストラクターでウィンドウの幅と高さを取得する方法が必要です。問題は、コンストラクターで、またはページが完全にロードされる前に、幅と高さを把握できないように見えることです。それがロードされた後、私はただ使うことができます:

this.ActualWidth;
this.ActualHeight;

ロード中に幅と高さを取得するために使用できるウィンドウロード完了イベントや方法はありますか?

4

2 に答える 2

7

ウィンドウのサイズは、プロパティWindow.Current.Boundsを使用していつでも確認できます。詳細については、「画面の解像度を取得する方法」を参照してください。WinRTアプリの場合は?

于 2012-10-15T18:33:30.487 に答える
3

これSizeChangedは、イベントの処理方法に関するブログ投稿です。コントロールがレンダリングされるときに計算されるため、このようなことを行わずにActualWidth/ActualHeightを取得することはできません。

private void OnWindowSizeChanged(object sender, Windows.UI.Core.WindowSizeChangedEventArgs e)
{
    var CurrentViewState = Windows.UI.ViewManagement.ApplicationView.Value;
    double AppWidth = e.Size.Width;
    double AppHeight = e.Size.Height;

    // DownloadImage requires accurate view state and app size!
    DownloadImage(CurrentViewState, AppHeight, AppWidth);
}

Window.Current.SizeChanged += OnWindowSizeChanged;
于 2012-10-15T17:53:30.547 に答える