SurfaceImageSource Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет общие поверхности Microsoft DirectX для рисования и последующего создания битов в содержимое приложения.
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class SurfaceImageSource : ImageSource
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class SurfaceImageSource : ImageSource
Public Class SurfaceImageSource
Inherits ImageSource
- Наследование
- Производный
- Атрибуты
Требования к Windows
Семейство устройств |
Windows 10 (появилось в 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (появилось в v1.0)
|
Комментарии
Этот класс является областью отображения для взаимодействия Microsoft DirectX, в которой содержимое Microsoft DirectX может рисовать в пользовательском интерфейсе, состоящем из XAML. Один из соображений для SurfaceImageSource заключается в том, что, хотя он может включать содержимое Microsoft DirectX, цикл отрисовки по-прежнему ориентирован на XAML. Слишком много элементов Microsoft DirectX в этой модели отрисовки может привести к задержке или снижению скорости отклика. Если вы ожидаете большое количество перерисовок для содержимого Microsoft DirectX и планируете отобразить это содержимое в полноэкранном режиме без каких-либо окружающих пользовательского интерфейса XAML, скорее всего, следует использовать метод SwapChainBackgroundPanel . Другой альтернативой для содержимого, не являющегося полноэкранным, является отрисовка на отдельной поверхности в фоновом потоке, а затем копирование его содержимого в поверхность, возвращенную из BeginDraw в потоке пользовательского интерфейса. Это может разблокировать поток пользовательского интерфейса за счет более высокого использования памяти.
Дополнительные сведения о том, как рисовать в SurfaceImageSource, включая пример кода, см. в разделе Взаимодействие с DirectX и XAML.
Этот класс имеет дополнительный API, но эти API предназначены для взаимодействия Microsoft DirectX и не являются частью общей модели программирования приложений, описанной в этой документации. Например, на стороне Microsoft DirectX можно вызвать BeginDraw.
Производные классы SurfaceImageSource
SurfaceImageSource — это родительский класс для VirtualSurfaceImageSource.
Конструкторы
SurfaceImageSource(Int32, Int32) |
Инициализирует новый экземпляр класса SurfaceImageSource , указывая размер области рисования. |
SurfaceImageSource(Int32, Int32, Boolean) |
Инициализирует новый экземпляр класса SurfaceImageSource , указывая размер области рисования и указывает, должна ли непрозрачность всегда быть полной. Используйте его с |
Свойства
Dispatcher |
Возвращает объект CoreDispatcher , с которым связан этот объект. CoreDispatcher представляет собой средство, которое может получить доступ к DependencyObject в потоке пользовательского интерфейса, даже если код инициируется потоком, не относящегося к пользовательскому интерфейсу. (Унаследовано от DependencyObject) |
Методы
ClearValue(DependencyProperty) |
Очищает локальное значение свойства зависимостей. (Унаследовано от DependencyObject) |
GetAnimationBaseValue(DependencyProperty) |
Возвращает любое базовое значение, установленное для свойства зависимостей, которое применяется в случаях, когда анимация не активна. (Унаследовано от DependencyObject) |
GetValue(DependencyProperty) |
Возвращает текущее действующее значение свойства зависимостей из DependencyObject. (Унаследовано от DependencyObject) |
ReadLocalValue(DependencyProperty) |
Возвращает локальное значение свойства зависимостей, если задано локальное значение. (Унаследовано от DependencyObject) |
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback) |
Регистрирует функцию уведомления для прослушивания изменений определенного DependencyProperty в этом экземпляре DependencyObject . (Унаследовано от DependencyObject) |
SetValue(DependencyProperty, Object) |
Задает локальное значение свойства зависимостей для Объекта DependencyObject. (Унаследовано от DependencyObject) |
UnregisterPropertyChangedCallback(DependencyProperty, Int64) |
Отменяет уведомление об изменениях, которое было ранее зарегистрировано путем вызова Метода RegisterPropertyChangedCallback. (Унаследовано от DependencyObject) |