ImageAttributes::SetWrapMode Method (WrapMode)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Sets the wrap mode that is used to decide how to tile a texture across a shape, or at shape boundaries. A texture is tiled across a shape to fill it in when the texture is smaller than the shape it is filling.

Namespace:   System.Drawing.Imaging
Assembly:  System.Drawing (in System.Drawing.dll)

void SetWrapMode(
	WrapMode mode


Type: System.Drawing.Drawing2D::WrapMode

An element of WrapMode that specifies how repeated copies of an image are used to tile an area.

Calling the SetWrapMode(WrapMode) method is equivalent to calling SetWrapMode(WrapMode, Color) and passing Color::Black for the color parameter. Color::Black specifies the color of pixels outside of a rendered image. This color is visible if the mode parameter is set to Clamp and the source rectangle passed to the DrawImage method is larger than the image itself.

The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. The code performs the following actions:

  1. Opens an Image from the Circle3.jpg file (a small, red-filled circle) and draws it to the screen.

  2. Creates an ImageAttributes object and sets the WrapMode enumeration to Tile.

  3. Creates a TextureBrush using the image from the Circle3.jpg file.

  4. Draws a rectangle to the screen that is filled with the small, red-filled circles.

void SetWrapModeExample( PaintEventArgs^ e )
   // Create a filled, red circle, and save it to Circle3.jpg.
   Bitmap^ myBitmap = gcnew Bitmap( 50,50 );
   Graphics^ g = Graphics::FromImage( myBitmap );
   g->Clear( Color::White );
   g->FillEllipse( gcnew SolidBrush( Color::Red ), Rectangle(0,0,25,25) );
   myBitmap->Save( "Circle3.jpg" );

   // Create an Image object from the Circle3.jpg file, and draw it
   // to the screen.
   Image^ myImage = Image::FromFile( "Circle3.jpg" );
   e->Graphics->DrawImage( myImage, 20, 20 );

   // Set the wrap mode.
   ImageAttributes^ imageAttr = gcnew ImageAttributes;
   imageAttr->SetWrapMode( WrapMode::Tile );

   // Create a TextureBrush.
   Rectangle brushRect = Rectangle(0,0,25,25);
   TextureBrush^ myTBrush = gcnew TextureBrush( myImage,brushRect,imageAttr );

   // Draw to the screen a rectangle filled with red circles.
   e->Graphics->FillRectangle( myTBrush, 100, 20, 200, 200 );

.NET Framework
Available since 1.1
Return to top