AcrylicBrush 类

定义

绘制一个具有半透明材料的区域,该材料使用多种效果,包括模糊和噪音纹理。

适用于 UWP的等效 WinUI 2 API:Microsoft.UI.Xaml.Media.AcrylicBrush(对于 Windows 应用 SDK中的 WinUI,请参阅 Windows 应用 SDK 命名空间)。

/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 327680)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[WebHostHidden]
class AcrylicBrush : XamlCompositionBrushBase
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 327680)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class AcrylicBrush : XamlCompositionBrushBase
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 327680)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class AcrylicBrush : XamlCompositionBrushBase
function AcrylicBrush()
Public Class AcrylicBrush
Inherits XamlCompositionBrushBase
继承
属性

Windows 要求

设备系列
Windows 10 Fall Creators Update (在 10.0.16299.0 中引入)
API contract
Windows.Foundation.UniversalApiContract (在 v5.0 中引入)

示例

提示

有关详细信息、设计指南和代码示例,请参阅 亚克力材料

如果已安装 WinUI 2 库 应用,请单击此处 打开该应用,并查看亚克力在操作

若要添加亚克力画笔,请为深色、浅色和高对比度主题定义三个资源。 请注意,在高对比度中,我们建议将 SolidColorBrush 与深/浅亚克力Brush 配合使用,其 x:Key 相同。

注意

如果未指定 TintLuminosityOpacity 值,系统会根据 TintColor 和 TintOpacity 自动调整其值。

<ResourceDictionary.ThemeDictionaries>
    <ResourceDictionary x:Key="Default">
        <AcrylicBrush x:Key="MyAcrylicBrush"
            BackgroundSource="HostBackdrop"
            TintColor="#FFFF0000"
            TintOpacity="0.8"
            TintLuminosityOpacity="0.5"
            FallbackColor="#FF7F0000"/>
    </ResourceDictionary>

    <ResourceDictionary x:Key="HighContrast">
        <SolidColorBrush x:Key="MyAcrylicBrush"
            Color="{ThemeResource SystemColorWindowColor}"/>
    </ResourceDictionary>

    <ResourceDictionary x:Key="Light">
        <AcrylicBrush x:Key="MyAcrylicBrush"
            BackgroundSource="HostBackdrop"
            TintColor="#FFFF0000"
            TintOpacity="0.8"
            TintLuminosityOpacity="0.5"
            FallbackColor="#FFFF7F7F"/>
    </ResourceDictionary>
</ResourceDictionary.ThemeDictionaries>

此示例演示如何在代码中创建 AcrylicBrush。 如果你的应用支持多个 OS 目标,请确保先检查该 API 是否在用户计算机上可用,然后再使用它。

if (Windows.Foundation.Metadata.ApiInformation.IsTypePresent("Windows.UI.Xaml.Media.AcrylicBrush"))
{
    Windows.UI.Xaml.Media.AcrylicBrush myBrush = new Windows.UI.Xaml.Media.AcrylicBrush();
    myBrush.BackgroundSource = Windows.UI.Xaml.Media.AcrylicBackgroundSource.HostBackdrop;
    myBrush.TintColor = Color.FromArgb(255, 202, 24, 37);
    myBrush.FallbackColor = Color.FromArgb(255, 202, 24, 37);
    myBrush.TintOpacity = 0.6;

    grid.Fill = myBrush;
}
else
{
    SolidColorBrush myBrush = new SolidColorBrush(Color.FromArgb(255, 202, 24, 37));

    grid.Fill = myBrush;
}

注解

版本历史记录

Windows 版本 SDK 版本 已添加值
1903 18362 TintLuminosityOpacity

构造函数

AcrylicBrush()

初始化 AcrylicBrush 类的新实例。

适用于 UWP的等效 WinUI 2 API:Microsoft.UI.Xaml.Media.AcrylicBrush.-ctor(对于 Windows 应用 SDK中的 WinUI,请参阅 Windows 应用 SDK 命名空间)。

属性

AlwaysUseFallback

获取或设置一个值,该值指定画笔是否强制使用纯色回退颜色。

适用于 UWP的等效 WinUI 2 API:Microsoft.UI.Xaml.Media.AcrylicBrush.AlwaysUseFallback(对于 Windows 应用 SDK中的 WinUI,请参阅 Windows 应用 SDK 命名空间)。

AlwaysUseFallbackProperty

标识 AlwaysUseFallback 依赖项属性。

适用于 UWP的等效 WinUI 2 API:Microsoft.UI.Xaml.Media.AcrylicBrush.AlwaysUseFallbackProperty(对于 Windows 应用 SDK中的 WinUI,请参阅 Windows 应用 SDK 命名空间)。

BackgroundSource

获取或设置一个值,该值指定是应用内容中的画笔样本还是应用窗口后面的内容。

适用于 UWP的等效 WinUI 2 API:Microsoft.UI.Xaml.Media.AcrylicBrush.BackgroundSource(对于 Windows 应用 SDK中的 WinUI,请参阅 Windows 应用 SDK 命名空间)。

BackgroundSourceProperty

标识 BackgroundSource 依赖项属性。

适用于 UWP的 WinUI 2 API 等效 Microsoft.UI.Xaml.Media.AcrylicBrush.BackgroundSourceProperty(对于 Windows 应用 SDK中的 WinUI,请参阅 Windows 应用 SDK 命名空间)。

CompositionBrush

获取或设置此 XAML 画笔使用的 CompositionBrush

(继承自 XamlCompositionBrushBase)
Dispatcher

获取与此对象关联的 CoreDispatcherCoreDispatcher 表示可以访问 UI 线程上的 DependencyObject 的设施,即使代码是由非 UI 线程启动的。

(继承自 DependencyObject)
FallbackColor

如果无法呈现 CompositionBrush,则用于呈现的颜色。

(继承自 XamlCompositionBrushBase)
Opacity

获取或设置 Brush的不透明度程度。

(继承自 Brush)
RelativeTransform

获取或设置使用相对坐标应用于画笔的转换。

(继承自 Brush)
TintColor

获取或设置半透明亚克力材料的颜色色调。

适用于 UWP的等效 WinUI 2 API:Microsoft.UI.Xaml.Media.AcrylicBrush.TintColor(对于 Windows 应用 SDK中的 WinUI,请参阅 Windows 应用 SDK 命名空间)。

TintColorProperty

标识 TintColor 依赖项属性。

适用于 UWP的等效 WinUI 2 API:Microsoft.UI.Xaml.Media.AcrylicBrush.TintColorProperty(对于 Windows 应用 SDK中的 WinUI,请参阅 Windows 应用 SDK 命名空间)。

TintLuminosityOpacity

获取或设置 TintColor 与亚克力图面背后的基础像素之间的亮度量。

适用于 UWP的等效 WinUI 2 API:Microsoft.UI.Xaml.Media.AcrylicBrush.TintLuminosityOpacity(对于 Windows 应用 SDK中的 WinUI,请参阅 Windows 应用 SDK 命名空间)。

TintLuminosityOpacityProperty

标识 TintLuminosityOpacity 依赖属性。

适用于 UWP的等效 WinUI 2 API:Microsoft.UI.Xaml.Media.AcrylicBrush.TintLuminosityOpacityProperty(对于 Windows 应用 SDK中的 WinUI,请参阅 Windows 应用 SDK 命名空间)。

TintOpacity

获取或设置颜色色调的不透明度。

适用于 UWP的等效 WinUI 2 API:Microsoft.UI.Xaml.Media.AcrylicBrush.TintOpacity(对于 Windows 应用 SDK中的 WinUI,请参阅 Windows 应用 SDK 命名空间)。

TintOpacityProperty

标识 TintOpacity 依赖项属性。

适用于 UWP的等效 WinUI 2 API:Microsoft.UI.Xaml.Media.AcrylicBrush.TintOpacityProperty(对于 Windows 应用 SDK中的 WinUI,请参阅 Windows 应用 SDK 命名空间)。

TintTransitionDuration

获取或设置 TintColor 更改时使用的自动切换动画的长度。

适用于 UWP的等效 WinUI 2 API:Microsoft.UI.Xaml.Media.AcrylicBrush.TintTransitionDuration(对于 Windows 应用 SDK中的 WinUI,请参阅 Windows 应用 SDK 命名空间)。

TintTransitionDurationProperty

标识 TintTransitionDuration 依赖项属性。

适用于 UWP的等效 WinUI 2 API:Microsoft.UI.Xaml.Media.AcrylicBrush.TintTransitionDurationProperty(对于 Windows 应用 SDK中的 WinUI,请参阅 Windows 应用 SDK 命名空间)。

Transform

获取或设置应用于画笔的转换。

(继承自 Brush)

方法

ClearValue(DependencyProperty)

清除依赖属性的本地值。

(继承自 DependencyObject)
GetAnimationBaseValue(DependencyProperty)

返回为依赖属性建立的任何基值,在动画未处于活动状态的情况下,该属性将适用。

(继承自 DependencyObject)
GetValue(DependencyProperty)

DependencyObject返回依赖属性的当前有效值。

(继承自 DependencyObject)
OnConnected()

首次在屏幕上使用画笔绘制元素时调用。

在派生类中实现时,可以创建 CompositionBrush 实例,并通过设置 compositionBrush 属性 提供给框架。

当画笔不再用于绘制任何元素时,将调用 OnDisconnected

(继承自 XamlCompositionBrushBase)
OnDisconnected()

当画笔不再用于绘制任何元素时调用。

在派生类中实现时,可以安全地释放合成画笔和其他合成资源。

如果画笔稍后用于在断开连接后绘制任何元素,OnConnected 将再次调用。

(继承自 XamlCompositionBrushBase)
PopulatePropertyInfo(String, AnimationPropertyInfo)

定义可以进行动画处理的属性。

(继承自 Brush)
PopulatePropertyInfoOverride(String, AnimationPropertyInfo)

在派生类中重写时,定义可以进行动画处理的属性。

(继承自 Brush)
ReadLocalValue(DependencyProperty)

如果设置了本地值,则返回依赖属性的本地值。

(继承自 DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

注册一个通知函数,用于侦听此 DependencyObject 实例上特定 DependencyProperty 的更改。

(继承自 DependencyObject)
SetValue(DependencyProperty, Object)

设置 DependencyObject上的依赖属性的本地值。

(继承自 DependencyObject)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

取消以前通过调用 RegisterPropertyChangedCallback注册的更改通知。

(继承自 DependencyObject)

适用于

另请参阅