BufferedGraphicsContext Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Fornisce metodi per la creazione di buffer grafici che possono essere utilizzati per il doppio buffer.
public ref class BufferedGraphicsContext sealed : IDisposable
public sealed class BufferedGraphicsContext : IDisposable
type BufferedGraphicsContext = class
interface IDisposable
Public NotInheritable Class BufferedGraphicsContext
Implements IDisposable
- Ereditarietà
-
BufferedGraphicsContext
- Implementazioni
Esempio
Nell'esempio di codice seguente viene illustrato come acquisire per BufferedGraphicsContext il dominio applicazione corrente. Questo codice fa parte di un esempio più ampio fornito per la BufferedGraphics classe .
// Retrieves the BufferedGraphicsContext for the
// current application domain.
BufferedGraphicsContext^ appDomainGraphicsContext =
BufferedGraphicsManager::Current;
// Retrieves the BufferedGraphicsContext for the
// current application domain.
BufferedGraphicsContext appDomainGraphicsContext =
BufferedGraphicsManager.Current;
' Retrieves the BufferedGraphicsContext for the
' current application domain.
Dim appDomainGraphicsContext As BufferedGraphicsContext = BufferedGraphicsManager.Current
Commenti
La BufferedGraphicsContext classe consente di implementare il doppio buffer personalizzato per la grafica. La grafica che usa il doppio buffer può ridurre o eliminare lo sfarfallio causato dalla ridisegnazione di una superficie di visualizzazione.
Nota
In .NET 6 e versioni successive, il pacchetto System.Drawing.Common, che include questo tipo, è supportato solo nei sistemi operativi Windows. L'uso di questo tipo nelle app multipiattaforma causa avvisi in fase di compilazione ed eccezioni di runtime. Per altre informazioni, vedere System.Drawing.Common supportato solo in Windows.
Nota
Il modo più semplice per usare il doppio buffer consiste nell'impostare il OptimizedDoubleBuffer flag di stile del controllo su un controllo utilizzando il SetStyle metodo . L'impostazione del flag degli OptimizedDoubleBuffer stili di controllo per un controllo reindirizza tutto il disegno per il controllo tramite un buffer grafico predefinito, senza richiedere codice aggiuntivo. Questo flag è impostato su true
per impostazione predefinita.
La BufferedGraphicsContext classe fornisce metodi per la creazione e la configurazione di un buffer grafico. Il Allocate metodo crea un BufferedGraphicsoggetto , che è un wrapper per un buffer grafico che fornisce anche metodi che è possibile usare per scrivere nel buffer ed eseguirne il rendering in un dispositivo di output.
È possibile recuperare l'oggetto BufferedGraphicsContext per il dominio applicazione corrente dalla proprietà statica BufferedGraphicsManager.Current . Per applicazioni a elevato utilizzo grafico, ad esempio l'animazione, è possibile creare un oggetto dedicato BufferedGraphicsContext usando il costruttore, ma per la maggior parte delle applicazioni la BufferedGraphicsManager.Current proprietà sarà sufficiente.
Per altre informazioni sulla grafica memorizzata nel buffer e sulle implementazioni di buffering personalizzate, vedere Doppia grafica memorizzata nel buffer e Procedura: Gestire manualmente la grafica memorizzata nel buffer.
Costruttori
BufferedGraphicsContext() |
Inizializza una nuova istanza della classe BufferedGraphicsContext. |
Proprietà
MaximumBuffer |
Ottiene o imposta la dimensione massima del buffer da utilizzare. |
Metodi
Allocate(Graphics, Rectangle) |
Crea un buffer grafico delle dimensioni specificate utilizzando il formato pixel della classe Graphics specificata. |
Allocate(IntPtr, Rectangle) |
Crea un buffer grafico delle dimensioni specificate utilizzando il formato pixel della classe Graphics specificata. |
Dispose() |
Rilascia tutte le risorse usate da BufferedGraphicsContext. |
Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
Finalize() |
Consente a un oggetto di effettuare un tentativo di liberare risorse ed eseguire altre operazioni di pulizia prima che venga recuperato da Garbage Collection. |
GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
GetType() |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
Invalidate() |
Elimina il buffer grafico corrente in caso di buffer allocato e non ancora eliminato. |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |