Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Für komplexere Szenarien mit doppelter Pufferung können Sie die .NET Framework-Klassen verwenden, um Ihre eigene Doppelpufferlogik zu implementieren. Die Klasse, die für das Zuordnen und Verwalten einzelner Grafikpuffer verantwortlich ist, ist die BufferedGraphicsContext Klasse. Jede Anwendung verfügt über einen eigenen Standardwert BufferedGraphicsContext , der alle Standardpuffer für diese Anwendung verwaltet. Sie können einen Verweis auf diese Instanz abrufen, indem Sie die Current.
So rufen Sie einen Verweis auf den standardmäßigen BufferedGraphicsContext ab
Legen Sie die Current Eigenschaft fest, wie im folgenden Codebeispiel gezeigt.
BufferedGraphicsContext myContext; myContext = BufferedGraphicsManager.Current;Dim myContext As BufferedGraphicsContext myContext = BufferedGraphicsManager.CurrentHinweis
Sie müssen die
DisposeMethode auf den BufferedGraphicsContext Verweis nicht aufrufen, den Sie von der BufferedGraphicsManager Klasse erhalten. Das BufferedGraphicsManager behandelt alle Speicherzuweisungen und -verteilungen für Standardinstanzen BufferedGraphicsContext .Für grafisch intensive Anwendungen wie Animationen können Sie manchmal die Leistung verbessern, indem Sie eine dedizierte BufferedGraphicsContext anstelle der BufferedGraphicsContext verwenden, die von BufferedGraphicsManager bereitgestellt wird. Auf diese Weise können Sie Grafikpuffer einzeln erstellen und verwalten, ohne dass der Leistungsaufwand für die Verwaltung aller anderen gepufferten Grafiken, die Ihrer Anwendung zugeordnet sind, entstehen, obwohl der von der Anwendung verbrauchte Arbeitsspeicher größer ist.
So erstellen Sie einen dedizierten BufferedGraphicsContext
Deklarieren und erstellen Sie eine neue Instanz der BufferedGraphicsContext Klasse, wie im folgenden Codebeispiel gezeigt.
BufferedGraphicsContext myContext; myContext = new BufferedGraphicsContext(); // Insert code to create graphics here. // On a non-default BufferedGraphicsContext instance, you should always // call Dispose when finished. myContext.Dispose();Dim myContext As BufferedGraphicsContext myContext = New BufferedGraphicsContext ' Insert code to create graphics here. ' On a nondefault BufferedGraphicsContext instance, you should always ' call Dispose when finished. myContext.Dispose()
Siehe auch
.NET Desktop feedback