Graphics.BeginContainer Graphics.BeginContainer Graphics.BeginContainer Graphics.BeginContainer Method

Definizione

Salva un contenitore grafico con lo stato corrente di questo oggetto Graphics e apre e utilizza di un nuovo contenitore grafico.Saves a graphics container with the current state of this Graphics and opens and uses a new graphics container.

Overload

BeginContainer() BeginContainer() BeginContainer() BeginContainer()

Salva un contenitore grafico con lo stato corrente di questo oggetto Graphics e apre e utilizza di un nuovo contenitore grafico.Saves a graphics container with the current state of this Graphics and opens and uses a new graphics container.

BeginContainer(Rectangle, Rectangle, GraphicsUnit) BeginContainer(Rectangle, Rectangle, GraphicsUnit) BeginContainer(Rectangle, Rectangle, GraphicsUnit) BeginContainer(Rectangle, Rectangle, GraphicsUnit)

Salva un contenitore grafico con lo stato corrente di questo oggetto Graphics e apre e utilizza un nuovo contenitore grafico con la trasformazione in scala specificata.Saves a graphics container with the current state of this Graphics and opens and uses a new graphics container with the specified scale transformation.

BeginContainer(RectangleF, RectangleF, GraphicsUnit) BeginContainer(RectangleF, RectangleF, GraphicsUnit) BeginContainer(RectangleF, RectangleF, GraphicsUnit) BeginContainer(RectangleF, RectangleF, GraphicsUnit)

Salva un contenitore grafico con lo stato corrente di questo oggetto Graphics e apre e utilizza un nuovo contenitore grafico con la trasformazione in scala specificata.Saves a graphics container with the current state of this Graphics and opens and uses a new graphics container with the specified scale transformation.

BeginContainer() BeginContainer() BeginContainer() BeginContainer()

Salva un contenitore grafico con lo stato corrente di questo oggetto Graphics e apre e utilizza di un nuovo contenitore grafico.Saves a graphics container with the current state of this Graphics and opens and uses a new graphics container.

public:
 System::Drawing::Drawing2D::GraphicsContainer ^ BeginContainer();
public System.Drawing.Drawing2D.GraphicsContainer BeginContainer ();
member this.BeginContainer : unit -> System.Drawing.Drawing2D.GraphicsContainer
Public Function BeginContainer () As GraphicsContainer

Restituisce

Questo metodo restituisce un oggetto GraphicsContainer che rappresenta lo stato di questo oggetto Graphics quando è stata effettuata la chiamata al metodo.This method returns a GraphicsContainer that represents the state of this Graphics at the time of the method call.

Esempi

L'esempio di codice seguente è progettato per l'uso con Windows Forms e richiede PaintEventArgs e, che Paint è un parametro del gestore eventi.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. Nel codice vengono eseguite le seguenti azioni:The code performs the following actions:

  • Apre un nuovo contenitore grafico e salva il contenitore precedente.Opens a new graphics container and saves the old container.

  • Converte le coordinate internazionali nel contenitore.Translates the world coordinates in the container.

  • Riempie un rettangolo rosso nelle coordinate convertite del nuovo contenitore.Fills a red rectangle in the (translated coordinates of the) new container.

  • Chiude il nuovo contenitore e ripristina il contenitore salvato.Closes the new container and restores the saved container.

  • Riempie un rettangolo verde (per le coordinate non convertite) del contenitore salvato.Fills a green rectangle (to the untranslated coordinates) of the saved container.

Il risultato è un rettangolo verde che si basa su un rettangolo rosso con le stesse dimensioni.The result is a green rectangle that overlies a red rectangle of the same size.

private:
   void BeginContainerVoid( PaintEventArgs^ e )
   {
      // Begin graphics container.
      GraphicsContainer^ containerState = e->Graphics->BeginContainer();

      // Translate world transformation.
      e->Graphics->TranslateTransform( 100.0F, 100.0F );

      // Fill translated rectangle in container with red.
      e->Graphics->FillRectangle( gcnew SolidBrush( Color::Red ), 0, 0, 200, 200 );

      // End graphics container.
      e->Graphics->EndContainer( containerState );

      // Fill untransformed rectangle with green.
      e->Graphics->FillRectangle( gcnew SolidBrush( Color::Green ), 0, 0, 200, 200 );
   }
private void BeginContainerVoid(PaintEventArgs e)
{
    // Begin graphics container.
    GraphicsContainer containerState = e.Graphics.BeginContainer();
             
    // Translate world transformation.
    e.Graphics.TranslateTransform(100.0F, 100.0F);
             
    // Fill translated rectangle in container with red.
    e.Graphics.FillRectangle(new SolidBrush(Color.Red), 0, 0, 200, 200);
             
    // End graphics container.
    e.Graphics.EndContainer(containerState);
             
    // Fill untransformed rectangle with green.
    e.Graphics.FillRectangle(new SolidBrush(Color.Green), 0, 0, 200, 200);
}
Private Sub BeginContainerVoid(ByVal e As PaintEventArgs)

    ' Begin graphics container.
    Dim containerState As GraphicsContainer = _
    e.Graphics.BeginContainer()

    ' Translate world transformation.
    e.Graphics.TranslateTransform(100.0F, 100.0F)

    ' Fill translated rectangle in container with red.
    e.Graphics.FillRectangle(New SolidBrush(Color.Red), 0, 0, 200, 200)

    ' End graphics container.
    e.Graphics.EndContainer(containerState)

    ' Fill untransformed rectangle with green.
    e.Graphics.FillRectangle(New SolidBrush(Color.Green), 0, 0, _
    200, 200)
End Sub

Commenti

Utilizzare questo metodo con il EndContainer metodo per creare contenitori grafici nidificati.Use this method with the EndContainer method to create nested graphics containers. I contenitori di grafica conservano lo stato della grafica, ad esempio la trasformazione, l'area di ridimensionamento e le proprietà di rendering.Graphics containers retain graphics state, such as transformation, clipping region, and rendering properties.

Quando si chiama il BeginContainer metodo di un Graphicsoggetto, un blocco di informazioni che Graphics include lo stato di viene inserito in uno stack.When you call the BeginContainer method of a Graphics, an information block that holds the state of the Graphics is put on a stack. Il BeginContainer metodo restituisce un GraphicsContainer oggetto che identifica il blocco di informazioni.The BeginContainer method returns a GraphicsContainer that identifies that information block. Quando si passa l'oggetto di identificazione al EndContainer metodo, il blocco Information viene rimosso dallo stack e viene usato per Graphics ripristinare lo stato in cui si trovava BeginContainer al momento della chiamata al metodo.When you pass the identifying object to the EndContainer method, the information block is removed from the stack and is used to restore the Graphics to the state it was in at the time of the BeginContainer method call.

I contenitori possono essere annidati; ovvero, è possibile chiamare il BeginContainer metodo più volte prima di chiamare il EndContainer metodo.Containers can be nested; that is, you can call the BeginContainer method several times before you call the EndContainer method. Ogni volta che si chiama BeginContainer il metodo, viene inserito un blocco di informazioni nello stack e si riceve un GraphicsContainer oggetto per il blocco Information.Each time you call the BeginContainer method, an information block is put on the stack, and you receive a GraphicsContainer for the information block. Quando si passa uno di questi oggetti EndContainer al metodo, l'oggetto Graphics viene restituito allo stato in cui si trovava BeginContainer al momento della chiamata al metodo che ha restituito quel GraphicsContainerparticolare.When you pass one of those objects to the EndContainer method, the Graphics is returned to the state it was in at the time of the BeginContainer method call that returned that particular GraphicsContainer. Il blocco di informazioni inserito nello stack dalla BeginContainer chiamata al metodo viene rimosso dallo stack e vengono rimossi anche tutti i blocchi di informazioni posizionati nello stack dopo tale BeginContainer chiamata al metodo.The information block placed on the stack by that BeginContainer method call is removed from the stack, and all information blocks placed on that stack after that BeginContainer method call are also removed.

Le chiamate al Save metodo posizionano blocchi di informazioni nello stesso stack delle chiamate BeginContainer al metodo.Calls to the Save method place information blocks on the same stack as calls to the BeginContainer method. Così come una EndContainer chiamata al metodo viene abbinata a BeginContainer una chiamata al metodo Restore , una chiamata al metodo viene abbinata a una Save chiamata al metodo.Just as an EndContainer method call is paired with a BeginContainer method call, a Restore method call is paired with a Save method call.

Quando si chiama il EndContainer metodo, tutti i blocchi Save di informazioni posizionati nello stack (dal metodo o dal BeginContainer BeginContainer metodo) dopo la chiamata corrispondente al metodo vengono rimossi dallo stack.When you call the EndContainer method, all information blocks placed on the stack (by the Save method or by the BeginContainer method) after the corresponding call to the BeginContainer method are removed from the stack. Analogamente, quando si chiama Restore il metodo, tutti i blocchi di informazioni posizionati nello stack Save (dal metodo o BeginContainer dal Save metodo) dopo la chiamata corrispondente al metodo vengono rimossi dallo stack.Likewise, when you call the Restore method, all information blocks placed on the stack (by the Save method or by the BeginContainer method) after the corresponding call to the Save method are removed from the stack.

Lo stato di grafica stabilito dal BeginContainer metodo include le qualità di rendering dello stato di grafica predefinito. qualsiasi modifica dello stato di qualità del rendering esistente quando viene chiamato il metodo viene reimpostata sui valori predefiniti.The graphics state established by the BeginContainer method includes the rendering qualities of the default graphics state; any rendering-quality state changes existing when the method is called are reset to the default values.

BeginContainer(Rectangle, Rectangle, GraphicsUnit) BeginContainer(Rectangle, Rectangle, GraphicsUnit) BeginContainer(Rectangle, Rectangle, GraphicsUnit) BeginContainer(Rectangle, Rectangle, GraphicsUnit)

Salva un contenitore grafico con lo stato corrente di questo oggetto Graphics e apre e utilizza un nuovo contenitore grafico con la trasformazione in scala specificata.Saves a graphics container with the current state of this Graphics and opens and uses a new graphics container with the specified scale transformation.

public:
 System::Drawing::Drawing2D::GraphicsContainer ^ BeginContainer(System::Drawing::Rectangle dstrect, System::Drawing::Rectangle srcrect, System::Drawing::GraphicsUnit unit);
public System.Drawing.Drawing2D.GraphicsContainer BeginContainer (System.Drawing.Rectangle dstrect, System.Drawing.Rectangle srcrect, System.Drawing.GraphicsUnit unit);
member this.BeginContainer : System.Drawing.Rectangle * System.Drawing.Rectangle * System.Drawing.GraphicsUnit -> System.Drawing.Drawing2D.GraphicsContainer
Public Function BeginContainer (dstrect As Rectangle, srcrect As Rectangle, unit As GraphicsUnit) As GraphicsContainer

Parametri

dstrect
Rectangle Rectangle Rectangle Rectangle

Struttura Rectangle che, insieme al parametro srcrect, specifica una trasformazione in scala per il contenitore.Rectangle structure that, together with the srcrect parameter, specifies a scale transformation for the container.

srcrect
Rectangle Rectangle Rectangle Rectangle

Struttura Rectangle che, insieme al parametro dstrect, specifica una trasformazione in scala per il contenitore.Rectangle structure that, together with the dstrect parameter, specifies a scale transformation for the container.

unit
GraphicsUnit GraphicsUnit GraphicsUnit GraphicsUnit

Membro dell'enumerazione GraphicsUnit che specifica l'unità di misura del contenitore.Member of the GraphicsUnit enumeration that specifies the unit of measure for the container.

Restituisce

Questo metodo restituisce un oggetto GraphicsContainer che rappresenta lo stato di questo oggetto Graphics quando è stata effettuata la chiamata al metodo.This method returns a GraphicsContainer that represents the state of this Graphics at the time of the method call.

Esempi

L'esempio di codice seguente è progettato per l'uso con Windows Forms e richiede PaintEventArgs e, che Paint è un parametro del gestore eventi.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. Nel codice vengono eseguite le seguenti azioni:The code performs the following actions:

  • Crea due rettangoli per specificare una trasformazione di scala per il nuovo contenitore.Creates two rectangles to specify a scale transformation for the new container.

  • Apre il nuovo contenitore grafico e salva il contenitore precedente.Opens the new graphics container and saves the old container.

  • Riempie un rettangolo rosso nelle coordinate ridimensionate del nuovo contenitore.Fills a red rectangle in the (scaled coordinates of the) new container.

  • Chiude il nuovo contenitore e ripristina il contenitore salvato.Closes the new container and restores the saved container.

  • Riempie un rettangolo verde (per le coordinate non ridimensionate) del contenitore salvato.Fills a green rectangle (to the unscaled coordinates) of the saved container.

Il risultato è un rettangolo verde che si basa su un rettangolo rosso più piccolo.The result is a green rectangle that overlies a smaller red rectangle.

private:
   void BeginContainerRectangle( PaintEventArgs^ e )
   {
      // Define transformation for container.
      Rectangle srcRect = Rectangle(0,0,200,200);
      Rectangle destRect = Rectangle(100,100,150,150);

      // Begin graphics container.
      GraphicsContainer^ containerState = e->Graphics->BeginContainer( destRect, srcRect, GraphicsUnit::Pixel );

      // Fill red rectangle in container.
      e->Graphics->FillRectangle( gcnew SolidBrush( Color::Red ), 0, 0, 200, 200 );

      // End graphics container.
      e->Graphics->EndContainer( containerState );

      // Fill untransformed rectangle with green.
      e->Graphics->FillRectangle( gcnew SolidBrush( Color::Green ), 0, 0, 200, 200 );
   }
private void BeginContainerRectangle(PaintEventArgs e)
{
    // Define transformation for container.
    Rectangle srcRect = new Rectangle(0, 0, 200, 200);
    Rectangle destRect = new Rectangle(100, 100, 150, 150);
             
    // Begin graphics container.
    GraphicsContainer containerState = e.Graphics.BeginContainer(
        destRect, srcRect,
        GraphicsUnit.Pixel);
             
    // Fill red rectangle in container.
    e.Graphics.FillRectangle(new SolidBrush(Color.Red), 0, 0, 200, 200);
             
    // End graphics container.
    e.Graphics.EndContainer(containerState);
             
    // Fill untransformed rectangle with green.
    e.Graphics.FillRectangle(new SolidBrush(Color.Green), 0, 0, 200, 200);
}
Private Sub BeginContainerRectangle(ByVal e As PaintEventArgs)

    ' Define transformation for container.
    Dim srcRect As New Rectangle(0, 0, 200, 200)
    Dim destRect As New Rectangle(100, 100, 150, 150)

    ' Begin graphics container.
    Dim containerState As GraphicsContainer = _
    e.Graphics.BeginContainer(destRect, srcRect, GraphicsUnit.Pixel)

    ' Fill red rectangle in container.
    e.Graphics.FillRectangle(New SolidBrush(Color.Red), 0, 0, 200, 200)

    ' End graphics container.
    e.Graphics.EndContainer(containerState)

    ' Fill untransformed rectangle with green.
    e.Graphics.FillRectangle(New SolidBrush(Color.Green), 0, 0, _
    200, 200)
End Sub

Commenti

Utilizzare questo metodo con il EndContainer metodo per creare contenitori grafici nidificati.Use this method with the EndContainer method to create nested graphics containers. I contenitori di grafica conservano lo stato della grafica, ad esempio la trasformazione, l'area di ridimensionamento e le proprietà di rendering.Graphics containers retain graphics state, such as transformation, clipping region, and rendering properties.

Quando si chiama il BeginContainer metodo di un Graphicsoggetto, un blocco di informazioni che Graphics include lo stato di viene inserito in uno stack.When you call the BeginContainer method of a Graphics, an information block that holds the state of the Graphics is put on a stack. Il BeginContainer metodo restituisce un GraphicsContainer oggetto che identifica il blocco di informazioni.The BeginContainer method returns a GraphicsContainer that identifies that information block. Quando si passa l'oggetto di identificazione al EndContainer metodo, il blocco Information viene rimosso dallo stack e viene usato per Graphics ripristinare lo stato in cui si trovava BeginContainer al momento della chiamata al metodo.When you pass the identifying object to the EndContainer method, the information block is removed from the stack and is used to restore the Graphics to the state it was in at the time of the BeginContainer method call.

I contenitori possono essere annidati; ovvero, è possibile chiamare il BeginContainer metodo più volte prima di chiamare il EndContainer metodo.Containers can be nested; that is, you can call the BeginContainer method several times before you call the EndContainer method. Ogni volta che si chiama BeginContainer il metodo, viene inserito un blocco di informazioni nello stack e si riceve un GraphicsContainer oggetto per il blocco Information.Each time you call the BeginContainer method, an information block is put on the stack, and you receive a GraphicsContainer for the information block. Quando si passa uno di questi oggetti EndContainer al metodo, l'oggetto Graphics viene restituito allo stato in cui si trovava BeginContainer al momento della chiamata al metodo che ha restituito quel GraphicsContainerparticolare.When you pass one of those objects to the EndContainer method, the Graphics is returned to the state it was in at the time of the BeginContainer method call that returned that particular GraphicsContainer. Il blocco di informazioni inserito nello stack dalla BeginContainer chiamata al metodo viene rimosso dallo stack e vengono rimossi anche tutti i blocchi di informazioni posizionati nello stack dopo tale BeginContainer chiamata al metodo.The information block placed on the stack by that BeginContainer method call is removed from the stack, and all information blocks placed on that stack after that BeginContainer method call are also removed.

Le chiamate al Save metodo posizionano blocchi di informazioni nello stesso stack delle chiamate BeginContainer al metodo.Calls to the Save method place information blocks on the same stack as calls to the BeginContainer method. Così come una EndContainer chiamata al metodo viene abbinata a BeginContainer una chiamata al metodo Restore , una chiamata al metodo viene abbinata a una Save chiamata al metodo.Just as an EndContainer method call is paired with a BeginContainer method call, a Restore method call is paired with a Save method call.

Quando si chiama il EndContainer metodo, tutti i blocchi Save di informazioni posizionati nello stack (dal metodo o dal BeginContainer BeginContainer metodo) dopo la chiamata corrispondente al metodo vengono rimossi dallo stack.When you call the EndContainer method, all information blocks placed on the stack (by the Save method or by the BeginContainer method) after the corresponding call to the BeginContainer method are removed from the stack. Analogamente, quando si chiama Restore il metodo, tutti i blocchi di informazioni posizionati nello stack Save (dal metodo o BeginContainer dal Save metodo) dopo la chiamata corrispondente al metodo vengono rimossi dallo stack.Likewise, when you call the Restore method, all information blocks placed on the stack (by the Save method or by the BeginContainer method) after the corresponding call to the Save method are removed from the stack.

Questo metodo specifica una trasformazione di scala per il nuovo contenitore grafico con dstrect i srcrect parametri e.This method specifies a scale transformation for the new graphics container with the dstrect and srcrect parameters. La scala è uguale alla trasformazione che, quando applicata a srcrect, dstrectrestituisce.The scale is equal to the transformation that, when applied to srcrect, results in dstrect.

Lo stato di grafica stabilito dal BeginContainer metodo include le qualità di rendering dello stato di grafica predefinito. qualsiasi modifica dello stato di qualità del rendering esistente quando viene chiamato il metodo viene reimpostata sui valori predefiniti.The graphics state established by the BeginContainer method includes the rendering qualities of the default graphics state; any rendering-quality state changes existing when the method is called are reset to the default values.

BeginContainer(RectangleF, RectangleF, GraphicsUnit) BeginContainer(RectangleF, RectangleF, GraphicsUnit) BeginContainer(RectangleF, RectangleF, GraphicsUnit) BeginContainer(RectangleF, RectangleF, GraphicsUnit)

Salva un contenitore grafico con lo stato corrente di questo oggetto Graphics e apre e utilizza un nuovo contenitore grafico con la trasformazione in scala specificata.Saves a graphics container with the current state of this Graphics and opens and uses a new graphics container with the specified scale transformation.

public:
 System::Drawing::Drawing2D::GraphicsContainer ^ BeginContainer(System::Drawing::RectangleF dstrect, System::Drawing::RectangleF srcrect, System::Drawing::GraphicsUnit unit);
public System.Drawing.Drawing2D.GraphicsContainer BeginContainer (System.Drawing.RectangleF dstrect, System.Drawing.RectangleF srcrect, System.Drawing.GraphicsUnit unit);
member this.BeginContainer : System.Drawing.RectangleF * System.Drawing.RectangleF * System.Drawing.GraphicsUnit -> System.Drawing.Drawing2D.GraphicsContainer
Public Function BeginContainer (dstrect As RectangleF, srcrect As RectangleF, unit As GraphicsUnit) As GraphicsContainer

Parametri

dstrect
RectangleF RectangleF RectangleF RectangleF

Struttura RectangleF che, insieme al parametro srcrect, specifica una trasformazione in scala per il nuovo contenitore grafico.RectangleF structure that, together with the srcrect parameter, specifies a scale transformation for the new graphics container.

srcrect
RectangleF RectangleF RectangleF RectangleF

Struttura RectangleF che, insieme al parametro dstrect, specifica una trasformazione in scala per il nuovo contenitore grafico.RectangleF structure that, together with the dstrect parameter, specifies a scale transformation for the new graphics container.

unit
GraphicsUnit GraphicsUnit GraphicsUnit GraphicsUnit

Membro dell'enumerazione GraphicsUnit che specifica l'unità di misura del contenitore.Member of the GraphicsUnit enumeration that specifies the unit of measure for the container.

Restituisce

Questo metodo restituisce un oggetto GraphicsContainer che rappresenta lo stato di questo oggetto Graphics quando è stata effettuata la chiamata al metodo.This method returns a GraphicsContainer that represents the state of this Graphics at the time of the method call.

Esempi

L'esempio di codice seguente è progettato per l'uso con Windows Forms e richiede PaintEventArgs e, che Paint è un parametro del gestore eventi.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. Nel codice vengono eseguite le seguenti azioni:The code performs the following actions:

  • Crea due rettangoli per specificare una trasformazione di scala per il nuovo contenitore.Creates two rectangles to specify a scale transformation for the new container.

  • Apre il nuovo contenitore grafico e salva il contenitore precedente.Opens the new graphics container and saves the old container.

  • Riempie un rettangolo rosso nelle coordinate ridimensionate del nuovo contenitore.Fills a red rectangle in the (scaled coordinates of the) new container.

  • Chiude il nuovo contenitore e ripristina il contenitore salvato.Closes the new container and restores the saved container.

  • Riempie un rettangolo verde (per le coordinate non ridimensionate) del contenitore salvato.Fills a green rectangle (to the unscaled coordinates) of the saved container.

Il risultato è un rettangolo verde che si basa su un rettangolo rosso più piccolo.The result is a green rectangle that overlies a smaller red rectangle.

private:
   void BeginContainerRectangleF( PaintEventArgs^ e )
   {
      // Define transformation for container.
      RectangleF srcRect = RectangleF(0.0F,0.0F,200.0F,200.0F);
      RectangleF destRect = RectangleF(100.0F,100.0F,150.0F,150.0F);

      // Begin graphics container.
      GraphicsContainer^ containerState = e->Graphics->BeginContainer( destRect, srcRect, GraphicsUnit::Pixel );

      // Fill red rectangle in container.
      e->Graphics->FillRectangle( gcnew SolidBrush( Color::Red ), 0.0F, 0.0F, 200.0F, 200.0F );

      // End graphics container.
      e->Graphics->EndContainer( containerState );

      // Fill untransformed rectangle with green.
      e->Graphics->FillRectangle( gcnew SolidBrush( Color::Green ), 0.0F, 0.0F, 200.0F, 200.0F );
   }
private void BeginContainerRectangleF(PaintEventArgs e)
{
    // Define transformation for container.
    RectangleF srcRect = new RectangleF(0.0F, 0.0F, 200.0F, 200.0F);
    RectangleF destRect = new RectangleF(100.0F, 100.0F, 150.0F, 150.0F);
             
    // Begin graphics container.
    GraphicsContainer containerState = e.Graphics.BeginContainer(
        destRect, srcRect,
        GraphicsUnit.Pixel);
             
    // Fill red rectangle in container.
    e.Graphics.FillRectangle(new SolidBrush(Color.Red), 0.0F, 0.0F, 200.0F, 200.0F);
             
    // End graphics container.
    e.Graphics.EndContainer(containerState);
             
    // Fill untransformed rectangle with green.
    e.Graphics.FillRectangle(new SolidBrush(Color.Green), 0.0F, 0.0F, 200.0F, 200.0F);
}
Private Sub BeginContainerRectangleF(ByVal e As PaintEventArgs)

    ' Define transformation for container.
    Dim srcRect As New RectangleF(0.0F, 0.0F, 200.0F, 200.0F)
    Dim destRect As New RectangleF(100.0F, 100.0F, 150.0F, 150.0F)

    ' Begin graphics container.
    Dim containerState As GraphicsContainer = _
    e.Graphics.BeginContainer(destRect, srcRect, GraphicsUnit.Pixel)

    ' Fill red rectangle in container.
    e.Graphics.FillRectangle(New SolidBrush(Color.Red), 0.0F, 0.0F, _
    200.0F, 200.0F)

    ' End graphics container.
    e.Graphics.EndContainer(containerState)

    ' Fill untransformed rectangle with green.
    e.Graphics.FillRectangle(New SolidBrush(Color.Green), 0.0F, 0.0F, _
    200.0F, 200.0F)
End Sub

Commenti

Utilizzare questo metodo con il EndContainer metodo per creare contenitori grafici nidificati.Use this method with the EndContainer method to create nested graphics containers. I contenitori di grafica conservano lo stato della grafica, ad esempio la trasformazione, l'area di ridimensionamento e le proprietà di rendering.Graphics containers retain graphics state, such as transformation, clipping region, and rendering properties.

Quando si chiama il BeginContainer metodo di un Graphicsoggetto, un blocco di informazioni che Graphics include lo stato di viene inserito in uno stack.When you call the BeginContainer method of a Graphics, an information block that holds the state of the Graphics is put on a stack. Il BeginContainer metodo restituisce un GraphicsContainer oggetto che identifica il blocco di informazioni.The BeginContainer method returns a GraphicsContainer that identifies that information block. Quando si passa l'oggetto di identificazione al EndContainer metodo, il blocco Information viene rimosso dallo stack e viene usato per Graphics ripristinare lo stato in cui si trovava BeginContainer al momento della chiamata al metodo.When you pass the identifying object to the EndContainer method, the information block is removed from the stack and is used to restore the Graphics to the state it was in at the time of the BeginContainer method call.

I contenitori possono essere annidati; ovvero, è possibile chiamare il BeginContainer metodo più volte prima di chiamare il EndContainer metodo.Containers can be nested; that is, you can call the BeginContainer method several times before you call the EndContainer method. Ogni volta che si chiama BeginContainer il metodo, viene inserito un blocco di informazioni nello stack e si riceve un GraphicsContainer oggetto per il blocco Information.Each time you call the BeginContainer method, an information block is put on the stack, and you receive a GraphicsContainer for the information block. Quando si passa uno di questi oggetti EndContainer al metodo, l'oggetto Graphics viene restituito allo stato in cui si trovava BeginContainer al momento della chiamata al metodo che ha restituito quel GraphicsContainerparticolare.When you pass one of those objects to the EndContainer method, the Graphics is returned to the state it was in at the time of the BeginContainer method call that returned that particular GraphicsContainer. Il blocco di informazioni inserito nello stack dalla BeginContainer chiamata al metodo viene rimosso dallo stack e vengono rimossi anche tutti i blocchi di informazioni posizionati nello stack dopo tale BeginContainer chiamata al metodo.The information block placed on the stack by that BeginContainer method call is removed from the stack, and all information blocks placed on that stack after that BeginContainer method call are also removed.

Le chiamate al Save metodo posizionano blocchi di informazioni nello stesso stack delle chiamate BeginContainer al metodo.Calls to the Save method place information blocks on the same stack as calls to the BeginContainer method. Così come una EndContainer chiamata al metodo viene abbinata a BeginContainer una chiamata al metodo Restore , una chiamata al metodo viene abbinata a una Save chiamata al metodo.Just as an EndContainer method call is paired with a BeginContainer method call, a Restore method call is paired with a Save method call.

Quando si chiama il EndContainer metodo, tutti i blocchi Save di informazioni posizionati nello stack (dal metodo o dal BeginContainer BeginContainer metodo) dopo la chiamata corrispondente al metodo vengono rimossi dallo stack.When you call the EndContainer method, all information blocks placed on the stack (by the Save method or by the BeginContainer method) after the corresponding call to the BeginContainer method are removed from the stack. Analogamente, quando si chiama Restore il metodo, tutti i blocchi di informazioni posizionati nello stack Save (dal metodo o BeginContainer dal Save metodo) dopo la chiamata corrispondente al metodo vengono rimossi dallo stack.Likewise, when you call the Restore method, all information blocks placed on the stack (by the Save method or by the BeginContainer method) after the corresponding call to the Save method are removed from the stack.

Questo metodo specifica una trasformazione di scala per il nuovo contenitore grafico con dstrect i srcrect parametri e.This method specifies a scale transformation for the new graphics container with the dstrect and srcrect parameters. La scala è uguale alla trasformazione che, quando applicata a srcrect, dstrectrestituisce.The scale is equal to the transformation that, when applied to srcrect, results in dstrect.

Lo stato di grafica stabilito dal BeginContainer metodo include le qualità di rendering dello stato di grafica predefinito. qualsiasi modifica dello stato di qualità del rendering esistente quando viene chiamato il metodo viene reimpostata sui valori predefiniti.The graphics state established by the BeginContainer method includes the rendering qualities of the default graphics state; any rendering-quality state changes existing when the method is called are reset to the default values.

Si applica a