Share via


SurfaceImageSource Classe

Definição

Fornece superfícies compartilhadas do Microsoft DirectX para desenhar e, em seguida, compõe os bits no conteúdo do aplicativo.

/// [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 SurfaceImageSource : ImageSource
[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 class SurfaceImageSource : ImageSource
Public Class SurfaceImageSource
Inherits ImageSource
Herança
Object IInspectable DependencyObject ImageSource SurfaceImageSource
Derivado
Atributos

Comentários

Essa classe é uma área de exibição para a interoperação do Microsoft DirectX em que o conteúdo do Microsoft DirectX pode ser desenhado em uma interface do usuário composta por XAML. Uma consideração para um SurfaceImageSource é que, embora possa incorporar o conteúdo do Microsoft DirectX, o ciclo de renderização ainda é centrado em XAML. Muitos empates do Microsoft DirectX nesse modelo de renderização podem resultar em latência ou pouca capacidade de resposta. Se você prever um alto número de redesenhos para seu conteúdo do Microsoft DirectX e pretende exibir esse conteúdo em tela inteira sem qualquer interface do usuário XAML ao redor, provavelmente deverá usar a técnica SwapChainBackgroundPanel . Outra alternativa para conteúdo não em tela inteira é renderizar em uma superfície de rascunho separada em um thread de plano de fundo e copiar seu conteúdo para a superfície retornada de BeginDraw no thread da interface do usuário. Isso pode desbloquear o thread da interface do usuário ao custo de maior uso de memória.

Para obter mais informações sobre como desenhar para um SurfaceImageSource, incluindo o código de exemplo, consulte Interoperabilidade DirectX e XAML.

Essa classe tem API adicional, mas essas API são para a interoperação do Microsoft DirectX e não fazem parte do modelo geral de programação de aplicativos descrito nesta documentação. Por exemplo, do lado do Microsoft DirectX, você pode chamar BeginDraw.

Classes derivadas do SurfaceImageSource

SurfaceImageSource é a classe pai de VirtualSurfaceImageSource.

Construtores

SurfaceImageSource(Int32, Int32)

Inicializa uma nova instância da classe SurfaceImageSource , especificando o tamanho da área de desenho.

SurfaceImageSource(Int32, Int32, Boolean)

Inicializa uma nova instância da classe SurfaceImageSource , especificando o tamanho da área de desenho e se a opacidade deve estar sempre com opacidade completa. Use isso com isOpaque=true se o SurfaceImageSource não der suporte à transparência; isso pode aumentar o desempenho.

Propriedades

Dispatcher

Sempre retorna null em um aplicativo SDK do Aplicativo Windows. Em vez disso, use DispatcherQueue .

(Herdado de DependencyObject)
DispatcherQueue

Obtém o ao DispatcherQueue qual esse objeto está associado. O DispatcherQueue representa uma instalação que pode acessar o DependencyObject no thread da interface do usuário mesmo que o código seja iniciado por um thread que não seja da interface do usuário.

(Herdado de DependencyObject)

Métodos

ClearValue(DependencyProperty)

Limpa o valor local de uma propriedade de dependência.

(Herdado de DependencyObject)
GetAnimationBaseValue(DependencyProperty)

Retorna qualquer valor base estabelecido para uma propriedade de dependência, que se aplicaria nos casos em que uma animação não está ativa.

(Herdado de DependencyObject)
GetValue(DependencyProperty)

Retorna o valor efetivo atual de uma propriedade de dependência de um DependencyObject.

(Herdado de DependencyObject)
ReadLocalValue(DependencyProperty)

Retorna o valor local de uma propriedade de dependência, se um valor local for definido.

(Herdado de DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

Registra uma função de notificação para escutar alterações em uma DependencyProperty específica nesta instância dependencyObject .

(Herdado de DependencyObject)
SetValue(DependencyProperty, Object)

Define o valor local de uma propriedade de dependência em um DependencyObject.

(Herdado de DependencyObject)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

Cancela uma notificação de alteração que foi registrada anteriormente chamando RegisterPropertyChangedCallback.

(Herdado de DependencyObject)

Aplica-se a

Confira também