Share via


ISystemBackdropController 接口

定义

提供将系统背景控制器连接到窗口的方法。

public interface class ISystemBackdropController : IClosable
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.Foundation.WindowsAppSDKContract, 65536)]
/// [Windows.Foundation.Metadata.Guid(1446172524, 2932, 23378, 170, 51, 128, 38, 32, 104, 174, 178)]
struct ISystemBackdropController : IClosable
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.Foundation.WindowsAppSDKContract), 65536)]
[Windows.Foundation.Metadata.Guid(1446172524, 2932, 23378, 170, 51, 128, 38, 32, 104, 174, 178)]
public interface ISystemBackdropController : System.IDisposable
Public Interface ISystemBackdropController
Implements IDisposable
派生
属性
实现

示例

此示例演示如何使用 C++/WinRT 在 Win32 应用窗口中绘制新的 Windows 11 Mica 材料。

bool SetupBackdrop(winrt::Microsoft::UI::WindowId windowId, winrt::Windows::UI::Composition::CompositionTarget compositionTarget)
{
    winrt::Microsoft::UI::Composition::SystemBackdrops::MicaController micaController = winrt::MicaController();
    return micaController.SetTarget(windowId, compositionTarget);
}

注解

系统背景实质上是定义 UI 材料(如 AcrylicMica)CompositionBrush。 此画笔由系统合成器绘制。 系统背景控制器是一个对象,它封装系统背景材料的呈现以及给定材料的系统策略处理。 每个材料都有自己的控制器。

可以通过创建相应的 ISystemBackdropController 并将窗口和 CompositionTarget 提供给控制器的 SetTarget 方法,在内容背面绘制材料。 如果 SetTarget 成功并返回 true,则控制器负责所有材料处理,包括回退呈现和所有系统策略。 如果 SetTarget 失败并返回 false,则表示控制器无法将所需的材料设置为系统背景,并且未对 CompositionTarget进行任何更改。

材料是使用 Windows.UI.Composition API 绘制的,因此需要 一个 CompositionTarget ,该对象将在应用内容的其余部分后面绘制材料。 任何具有透明度的应用内容都会显示在所选材料中。

方法

Dispose()

执行与释放或重置非托管资源关联的应用程序定义的任务。

SetTarget(CoreWindow, CompositionTarget)

将系统背景控制器连接到指定的 CoreWindow

SetTarget(WindowId, CompositionTarget)

使用指定的 WindowId 将系统背景控制器连接到 HWNDAppWindow

适用于