UIViewSettings 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
表示與平板電腦或桌上型電腦) 和輸入裝置類型 (裝置模式相關聯的 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
- 繼承
- 屬性
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中,會移除平板電腦模式,並包含鍵盤連結和卸離狀態的新功能。
某些裝置 (電腦、膝上型電腦、平板電腦) 同時支援桌面和 平板電腦 模式。
僅限Windows 10,使用者可以移至 [設定 > 系統 > 平板電腦] 模式,並在使用您的裝置作為平板電腦時,將 Windows 設為更容易觸控,在平板電腦模式和桌面圖案中執行之間切換。
屬性
UserInteractionMode |
取得值,這個值表示裝置 UI 是否已針對觸控輸入或滑鼠輸入進行優化。 |
方法
GetForCurrentView() |
取得與使用中應用程式裝置模式 (平板電腦或桌上型電腦) 相關聯的 UI 狀態和行為。 僅限平板電腦模式 (Windows 10)注意 在Windows 11中,會移除平板電腦模式,並包含鍵盤連結和卸離狀態的新功能。 某些裝置 (電腦、膝上型電腦、平板電腦) 同時支援桌面和 平板電腦 模式。 僅限Windows 10,使用者可以移至 [設定 > 系統 > 平板電腦] 模式,並在使用您的裝置作為平板電腦時,將 Windows 設為更容易觸控,在平板電腦模式和桌面圖案中執行之間切換。 |