1

ユーザーが「分割画面」のWindows8機能を使用するとおかしな動作をするメトロアプリがあります(次の画像のように:http://pureinfotech.com/wp-content/uploads/2012/03/metro-app-desktop -split-screen-windows-8.png)。

アプリ内からプログラムで無効にする方法はありますか?私は今のところ何も見つけていませんが、誰かがもっとよく知っている場合に備えてこれを投稿しています。

前もって感謝します!

4

2 に答える 2

0

技術的には可能ですが、アプリの認定に合格しない可能性があります。

ページのSizeChangedイベントのイベントハンドラーでApplicationView.TryUnsnap()を使用してみることができます。

コンストラクターで:

Window.Current.SizeChanged += OnSizeChanged;

そして、ハンドラーメソッドを実装します。

public void OnSizeChanged(object sender, Windows.UI.Core.WindowSizeChangedEventArgs args)
    {
        switch (Windows.UI.ViewManagement.ApplicationView.Value)
        {
            case Windows.UI.ViewManagement.ApplicationViewState.Filled:
                VisualStateManager.GoToState(this, "Fill", false);
                break;
            case Windows.UI.ViewManagement.ApplicationViewState.FullScreenLandscape:
                VisualStateManager.GoToState(this, "Full", false);
                break;
            case Windows.UI.ViewManagement.ApplicationViewState.Snapped:
                VisualStateManager.GoToState(this, "Snapped", false);
                break;
            case Windows.UI.ViewManagement.ApplicationViewState.FullScreenPortrait:
                VisualStateManager.GoToState(this, "Portrait", false);
                break;
            default:
                break;
        }

        this.ShowCurrentViewState();
    }


void ShowCurrentViewState()
    {
        ApplicationViewState currentState = Windows.UI.ViewManagement.ApplicationView.Value;
        if (currentState == ApplicationViewState.Snapped)
        {
            ApplicationView.TryUnsnap() ;
        }

   }
于 2012-12-13T19:09:08.543 に答える
0

いいえ、あなたがすることはできません。

スプラッシュ スクリーンのようなものに移動することをお勧めします。

Windows ストアをスナップするとどうなるか見てみましょう。

于 2012-12-13T16:07:23.127 に答える