UIViewSettings クラス

定義

デバイス モード (タブレットまたはデスクトップ) と入力デバイスの種類に関連付けられている UI の状態と動作を表します。

public ref class UIViewSettings sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class UIViewSettings final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class UIViewSettings
Public NotInheritable Class UIViewSettings
継承
Object Platform::Object IInspectable UIViewSettings
属性

Windows の要件

デバイス ファミリ
Windows 10 (10.0.10240.0 で導入)
API contract
Windows.Foundation.UniversalApiContract (v1.0 で導入)

ここでは、ユーザー操作モードを検出して応答する方法を示します。

using System.ComponentModel;
using Windows.UI.Core;
using Windows.UI.ViewManagement;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Navigation;

namespace SDKTemplate
{
    public sealed partial class Scenario1_Basic : Page, INotifyPropertyChanged
    {
        private MainPage rootPage;

        public Scenario1_Basic()
        {
            this.InitializeComponent();
        }

        protected override void OnNavigatedTo(NavigationEventArgs e)
        {
            rootPage = MainPage.Current;

            // The SizeChanged event is raised when the
            // user interaction mode changes.
            Window.Current.SizeChanged += OnWindowResize;
            UpdateContent();
        }

        protected override void OnNavigatedFrom(NavigationEventArgs e)
        {
            Window.Current.SizeChanged -= OnWindowResize;
        }

        void OnWindowResize(object sender, WindowSizeChangedEventArgs e)
        {
            UpdateContent();
        }

        public event PropertyChangedEventHandler PropertyChanged;

        #region InteractionMode data binding
        private UserInteractionMode interactionMode;

        public UserInteractionMode InteractionMode
        {
            get { return interactionMode; }
            set
            {
                if (interactionMode != value)
                {
                    interactionMode = value;
                    if (PropertyChanged != null)
                    {
                        PropertyChanged(this, 
                            new PropertyChangedEventArgs("InteractionMode"));
                    }
                }
            }
        }

        #region CheckBoxStyle data binding
        private Style checkBoxStyle;

        public Style CheckBoxStyle
        {
            get { return checkBoxStyle; }
            set
            {
                if (checkBoxStyle != value)
                {
                    checkBoxStyle = value;
                    if (PropertyChanged != null)
                    {
                        PropertyChanged(this, 
                            new PropertyChangedEventArgs("CheckBoxStyle"));
                    }
                }
            }
        }

        void UpdateContent()
        {
            InteractionMode = 
                UIViewSettings.GetForCurrentView().UserInteractionMode;

            // Update styles
            CheckBoxStyle = 
                InteractionMode == 
                    UserInteractionMode.Mouse ? 
                        MouseCheckBoxStyle : TouchCheckBoxStyle;
        }
    }
}

注釈

このクラスのインスタンスを取得するには、 GetForCurrentView を呼び出します。

タブレット モード (Windows 10のみ)

注意

Windows 11では、タブレット モードが削除され、キーボードのアタッチとデタッチの姿勢に関する新機能が含まれています。

一部のデバイス (PC、ノート PC、タブレット) では、デスクトップ モードと タブレット モードの両方がサポートされています。

Windows 10のみ、ユーザーは [設定] [システム > タブレット モード] に移動し、デバイスをタブレットとして使用するときに [Windows のタッチに優しくする] > を設定することで、タブレット モードとデスクトップ モードで実行切り替えることができます。

プロパティ

UserInteractionMode

デバイス UI がタッチ入力またはマウス入力用に最適化されているかどうかを示す値を取得します。

メソッド

GetForCurrentView()

アクティブなアプリのデバイス モード (タブレットまたはデスクトップ) に関連付けられている UI の状態と動作を取得します。

タブレット モード (Windows 10のみ)

注意

Windows 11では、タブレット モードが削除され、キーボードのアタッチとデタッチの姿勢に関する新機能が含まれています。

一部のデバイス (PC、ノート PC、タブレット) では、デスクトップ モードと タブレット モードの両方がサポートされています。

Windows 10のみ、ユーザーは [設定] [システム > タブレット モード] に移動し、デバイスをタブレットとして使用するときに [Windows のタッチに優しくする] > を設定することで、タブレット モードとデスクトップ モードで実行切り替えることができます。

適用対象

こちらもご覧ください