ビジュアル レイヤーを使用して UI を拡張する
ビジュアル レイヤーは、グラフィックス、効果、アニメーション、にゅりょくに対して高パフォーマンスの保持モード API を提供し、Windows デバイス間ですべての UI の基盤となります。 Microsoft.UI.Composition は、Windows App SDK/WinUI 3 による UWP ビジュアル レイヤーの実装です。
Microsoft.UI.Composition を使用すると、UWP ビジュアル レイヤーとほぼ同じ機能を使用できます (一部例外あり)。 主な違いは、名前空間です。
- WinUI 3 の SwapChainPanel は、透過性にも、AcrylicBrush およびその上に CompositionBackdropBrush を使用するその他の効果の適用にも対応していません。
AcrylicBrush
や、これらその他のCompositionBackdropBrush
ベースの効果を使用しても、SwapChainPanel
からサンプリングすることはできません。 - デスクトップ アプリでは、
Window.Current
がnull
であるため、コンポジターのインスタンスをWindow.Current.Compositor
から取得することができません。 XAML アプリ (UWP とデスクトップの両方) では、ElementCompositionPreview.GetElementVisual(UIElement) を呼び出してコンポジションのビジュアルを取得し、Compositor
をそのビジュアルの コンポジター プロパティから取得します。UIElement
にアクセスできない (CompositionBrush をクラス ライブラリで作成する場合など) 場合は、CompositionTarget.GetCompositorForCurrentThread を呼び出すことができます。
ビジュアル レイヤーの詳細については、UWP ドキュメントのビジュアル レイヤーの概要に関する記事を参照してください。 ほとんどの場合、ドキュメントとサンプルは、Microsoft.UI.Composition に適用できます。
Microsoft.UI.Composition を使用するための前提条件
Windows App SDK で Microsoft.UI.Composition API を使用するには、次の手順を実行します。
- Windows App SDK の最新リリースをダウンロードしてインストールします。 詳細については、「Windows App SDK 用ツールをインストールする」を参照してください。
- 手順に従って、最初の WinUI 3 プロジェクトを作成するか、既存のプロジェクトで Windows App SDK を使用します。
Windows App SDK での Microsoft.UI.Composition の可用性に関する詳細については、リリース チャネルに関する記事を参照してください。
サンプル ギャラリー
Windows Composition サンプル ギャラリーが更新され、Windows アプリ SDK Composition API に依存するようになりました。 Microsoft.UI.Composition API の動作を確認するには、 WindowsCompositionSamples にアクセスしてください。