跳到主要内容
版本:11.0.0

Platform Settings

PlatformSettings 类表示访问特定平台设置和信息的约定。其中一些设置可能会在运行时由用户在操作系统中全局更改。

可以通过 TopLevelWindow 实例来访问 PlatformSettings,有关访问 TopLevel 的更多详细信息,请访问 TopLevel 页面:

var platformSettings = window.PlatformSettings;

方法

GetTapSize(PointerType type)

返回指针按下位置周围的矩形大小,以设备无关像素表示,此大小是指针抬起必须发生在其中的矩形区域,以注册触摸手势。

Size GetTapSize(PointerType type);

GetDoubleTapSize(PointerType type)

返回指针按下位置周围的矩形大小,以设备无关像素表示,此大小是指针抬起必须发生在其中的矩形区域,以注册双击手势。

Size GetDoubleTapSize(PointerType type);

GetDoubleTapTime(PointerType type)

返回双击手势的第一次和第二次点击之间可能发生的最大时间间隔。

TimeSpan GetDoubleTapTime(PointerType type);

GetColorValues()

返回当前系统颜色值,包括暗模式和强调色。

PlatformColorValues GetColorValues();
提示

虽然内置的 FluentTheme 支持在强调色之间自动切换,但此方法在应用自定义逻辑时非常有用,以使用操作系统颜色设置。

属性

HoldWaitDuration

指针按下和触发 Holding 事件之间的持续时间。

TimeSpan HoldWaitDuration { get; }

HotkeyConfiguration

Avalonia 应用程序中特定于平台的热键配置。

PlatformHotkeyConfiguration HotkeyConfiguration { get; }
提示

当应用程序需要处理已知手势(如复制、粘贴或剪切)时,HotkeyConfiguration 尤其有用。

protected override void OnKeyDown(KeyEventArgs e)
{
var hotkeys = TopLevel.GetTopLevel(this).PlatformSettings.HotkeyConfiguration;
if (hotkeys.Copy.Any(g => g.Matches(e)))
{
// 处理复制热键。
}
}

事件

ColorValuesChanged

当前系统颜色值更改时触发此事件。这包括暗模式和强调色的更改。

event EventHandler<PlatformColorValues>? ColorValuesChanged;

使用 IPlatformSettings 接口来使您的应用程序行为适应用户特定的平台设置。