SurfaceImageSource Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt Microsoft gemeinsam genutzten DirectX-Oberflächen bereit, in die gezeichnet und dann die Bits in App-Inhalte erstellt werden.
/// [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
- Vererbung
- Abgeleitet
- Attribute
Hinweise
Diese Klasse ist ein Anzeigebereich für Microsoft DirectX-Interoperabilität, wobei Microsoft DirectX-Inhalt in einer anderen XAML-zusammengesetzten Benutzeroberfläche zeichnen kann. Eine Überlegung für eine SurfaceImageSource besteht darin, dass während sie den Microsoft DirectX-Inhalt integrieren kann, der Renderingzyklus immer noch XAML-zentriert ist. Zu viele Microsoft DirectX in diesem Rendermodell zeichnet, kann zu Latenz oder schlechter Reaktionsfähigkeit führen. Wenn Sie eine hohe Anzahl von Neurastvorgängen für Ihren Microsoft DirectX-Inhalt antizipieren und diesen Inhalt ohne umgebende XAML-Benutzeroberfläche anzeigen möchten, sollten Sie stattdessen die SwapChainBackgroundPanel-Technik verwenden. Eine weitere Alternative für Nicht-Vollbildinhalte besteht darin, auf einer separaten Entwurfsoberfläche in einem Hintergrundthread zu rendern und dann den Inhalt auf die Oberfläche zu kopieren, die von BeginDraw im UI-Thread zurückgegeben wird. Dadurch kann die Blockierung des UI-Threads auf Kosten einer höheren Speicherauslastung aufgehoben werden.
Weitere Informationen zum Zeichnen auf eine SurfaceImageSource, einschließlich Beispielcode, finden Sie unter DirectX- und XAML-Interoperabilität.
Diese Klasse verfügt über zusätzliche API, diese API ist jedoch für Microsoft DirectX-Interoperabilität vorgesehen und nicht Teil des allgemeinen App-Programmiermodells, das andernfalls in dieser Dokumentation beschrieben wird. Beispielsweise können Sie "BeginDraw" von der Microsoft DirectX-Seite aufrufen.
Abgeleitete SurfaceImageSource-Klassen
SurfaceImageSource ist die übergeordnete Klasse für VirtualSurfaceImageSource.
Konstruktoren
| Name | Beschreibung |
|---|---|
| SurfaceImageSource(Int32, Int32, Boolean) |
Initialisiert eine neue Instanz der SurfaceImageSource-Klasse , die die Größe des Zeichnungsbereichs angibt und ob die Deckkraft voraussichtlich immer voll ist. Verwenden Sie dies, |
| SurfaceImageSource(Int32, Int32) |
Initialisiert eine neue Instanz der SurfaceImageSource-Klasse , die die Größe des Zeichnungsbereichs angibt. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| Dispatcher |
Gibt immer in einer Windows App SDK-App zurück |
| DispatcherQueue |
Ruft ab |
Methoden
| Name | Beschreibung |
|---|---|
| ClearValue(DependencyProperty) |
Löscht den lokalen Wert einer Abhängigkeitseigenschaft. (Geerbt von DependencyObject) |
| GetAnimationBaseValue(DependencyProperty) |
Gibt einen Basiswert zurück, der für eine Abhängigkeitseigenschaft eingerichtet wurde, was in Fällen angewendet wird, in denen eine Animation nicht aktiv ist. (Geerbt von DependencyObject) |
| GetValue(DependencyProperty) |
Gibt den aktuellen effektiven Wert einer Abhängigkeitseigenschaft aus einem DependencyObject zurück. (Geerbt von DependencyObject) |
| ReadLocalValue(DependencyProperty) |
Gibt den lokalen Wert einer Abhängigkeitseigenschaft zurück, wenn ein lokaler Wert festgelegt wird. (Geerbt von DependencyObject) |
| RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback) |
Registriert eine Benachrichtigungsfunktion, um Änderungen an einer bestimmten DependencyProperty für diese DependencyObject-Instanz zu überwachen. (Geerbt von DependencyObject) |
| SetValue(DependencyProperty, Object) |
Legt den lokalen Wert einer Abhängigkeitseigenschaft für ein DependencyObject fest. (Geerbt von DependencyObject) |
| UnregisterPropertyChangedCallback(DependencyProperty, Int64) |
Bricht eine Änderungsbenachrichtigung ab, die zuvor durch Aufrufen von RegisterPropertyChangedCallback registriert wurde. (Geerbt von DependencyObject) |