CompositionTarget Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет составную поверхность дисплея для приложения. Этот класс предоставляет события отрисовки на уровне приложения.
public ref class CompositionTarget sealed
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class CompositionTarget final
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class CompositionTarget
Public NotInheritable Class CompositionTarget
- Наследование
- Атрибуты
Комментарии
События CompositionTarget полезны для сценариев отрисовки, таких как:
синхронизация отрисовки взаимодействия DirectX с помощью события отрисовки
измерение времени отрисовки кадра с помощью события Rendered
повторное создание пользовательского визуального содержимого на экране в ответ на событие SurfaceContentsLost , например повторное создание содержимого взаимодействия RenderTargetBitmap или DirectX в SurfaceImageSource
В сценариях, которые не связаны с пользовательской отрисовкой или измерением времени кадра, скорее всего, не потребуется CompositionTarget и можно просто полагаться на систему отрисовки XAML, выполняющую всю композицию и макет.
Методы
GetCompositorForCurrentThread() |
Извлекает объект Compositor для этого потока. |
События
Rendered |
Происходит сразу после отрисовки основного процесса отрисовки кадра. Это событие позволяет определить, сколько времени занимает отрисовка каждого кадра. |
Rendering |
Происходит, когда основной процесс отрисовки отрисовывает кадр. |
SurfaceContentsLost |
Происходит, когда происходит основное изменение, например изменение устройства DirectX. Как правило, приложение должно повторно создавать содержимое своей поверхности при уведомлении об этом событии. |