Condividi tramite


SurfaceImageSource Classe

Definizione

Fornisce le superfici condivise Di Microsoft DirectX in cui disegnare e quindi compone i bit nel contenuto dell'app.

/// [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
Ereditarietà
Object IInspectable DependencyObject ImageSource SurfaceImageSource
Derivato
Attributi

Commenti

Questa classe è un'area di visualizzazione per l'interoperabilità Microsoft DirectX in cui il contenuto Microsoft DirectX può disegnare all'interno di un'interfaccia utente composta da XAML in caso contrario. Una considerazione per SurfaceImageSource è che, anche se può incorporare il contenuto Di Microsoft DirectX, il ciclo di rendering è ancora incentrato su XAML. Un numero eccessivo di disegni di Microsoft DirectX in questo modello di rendering può comportare una latenza o una scarsa velocità di risposta. Se prevedi un numero elevato di ridisegni per il tuo contenuto Microsoft DirectX e intendi visualizzare tale contenuto a schermo intero senza alcuna interfaccia utente XAML circostante, probabilmente dovresti usare la tecnica SwapChainBackgroundPanel . Un'altra alternativa per il contenuto non a schermo intero consiste nel eseguire il rendering in una superficie di lavoro separata su un thread di sfondo, quindi copiarne il contenuto nella superficie restituita da BeginDraw nel thread dell'interfaccia utente. Ciò può sbloccare il thread dell'interfaccia utente a un costo maggiore di utilizzo della memoria.

Per altre info su come disegnare in surfaceImageSource, incluso il codice di esempio, vedi Interoperabilità DirectX e XAML.

Questa classe include API aggiuntive, ma queste API sono per l'interoperabilità Microsoft DirectX e non fanno parte del modello di programmazione delle app generale altrimenti descritto in questa documentazione. Ad esempio, dal lato Microsoft DirectX, è possibile chiamare BeginDraw.

Classi derivate di SurfaceImageSource

SurfaceImageSource è la classe padre per VirtualSurfaceImageSource.

Costruttori

SurfaceImageSource(Int32, Int32)

Inizializza una nuova istanza della classe SurfaceImageSource , specificando le dimensioni dell'area di disegno.

SurfaceImageSource(Int32, Int32, Boolean)

Inizializza una nuova istanza della classe SurfaceImageSource , specificando le dimensioni dell'area di disegno e se l'opacità deve essere sempre completa. Usare questa opzione con isOpaque=true se SurfaceImageSource non deve supportare la trasparenza. Ciò può aumentare le prestazioni.

Proprietà

Dispatcher

Restituisce null sempre in un'app SDK per app di Windows. Usare invece DispatcherQueue .

(Ereditato da DependencyObject)
DispatcherQueue

Ottiene l'oggetto a cui è associato l'oggetto DispatcherQueue . DispatcherQueue Rappresenta una funzionalità che può accedere a nel thread dell'interfaccia DependencyObject utente anche se il codice viene avviato da un thread non dell'interfaccia utente.

(Ereditato da DependencyObject)

Metodi

ClearValue(DependencyProperty)

Cancella il valore locale di una proprietà di dipendenza.

(Ereditato da DependencyObject)
GetAnimationBaseValue(DependencyProperty)

Restituisce qualsiasi valore di base stabilito per una proprietà di dipendenza, che si applica nei casi in cui un'animazione non è attiva.

(Ereditato da DependencyObject)
GetValue(DependencyProperty)

Restituisce il valore effettivo corrente di una proprietà di dipendenza da dependencyObject.

(Ereditato da DependencyObject)
ReadLocalValue(DependencyProperty)

Restituisce il valore locale di una proprietà di dipendenza, se è impostato un valore locale.

(Ereditato da DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

Registra una funzione di notifica per l'ascolto delle modifiche apportate a una dipendenza specifica in questa istanza di DependencyObject .

(Ereditato da DependencyObject)
SetValue(DependencyProperty, Object)

Imposta il valore locale di una proprietà di dipendenza su dependencyObject.

(Ereditato da DependencyObject)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

Annulla una notifica di modifica registrata in precedenza chiamando RegisterPropertyChangedCallback.

(Ereditato da DependencyObject)

Si applica a

Vedi anche