RegionData Class

 
System_CAPS_noteNote

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

Encapsulates the data that makes up a Region object. This class cannot be inherited.

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

System.Object
  System.Drawing.Drawing2D.RegionData

public sealed class RegionData

NameDescription
System_CAPS_pubpropertyData

Gets or sets an array of bytes that specify the Region object.

NameDescription
System_CAPS_pubmethodEquals(Object)

Determines whether the specified object is equal to the current object.(Inherited from Object.)

System_CAPS_pubmethodGetHashCode()

Serves as the default hash function. (Inherited from Object.)

System_CAPS_pubmethodGetType()

Gets the Type of the current instance.(Inherited from Object.)

System_CAPS_pubmethodToString()

Returns a string that represents the current object.(Inherited from Object.)

The following 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:

  • Creates a rectangle and draw its to the screen in black.

  • Creates a region using the rectangle.

  • Gets the RegionData.

  • Draws the region data (an array of bytes) to the screen, by using the DisplayRegionData helper function.

public void GetRegionDataExample(PaintEventArgs e)
{

    // Create a rectangle and draw it to the screen in black.
    Rectangle regionRect = new Rectangle(20, 20, 100, 100);
    e.Graphics.DrawRectangle(Pens.Black, regionRect);

    // Create a region using the first rectangle.
    Region myRegion = new Region(regionRect);

    // Get the RegionData for this region.
    RegionData myRegionData = myRegion.GetRegionData();
    int myRegionDataLength = myRegionData.Data.Length;
    DisplayRegionData(e, myRegionDataLength, myRegionData);
}

// THIS IS A HELPER FUNCTION FOR GetRegionData.
public void DisplayRegionData(PaintEventArgs e,
    int len,
    RegionData dat)
{

    // Display the result.
    int i;
    float x = 20, y = 140;
    Font myFont = new Font("Arial", 8);
    SolidBrush myBrush = new SolidBrush(Color.Black);
    e.Graphics.DrawString("myRegionData = ",
        myFont,
        myBrush,
        new PointF(x, y));
    y = 160;
    for(i = 0; i < len; i++)
    {
        if(x > 300)
        {
            y += 20;
            x = 20;
        }
        e.Graphics.DrawString(dat.Data[i].ToString(),
            myFont,
            myBrush,
            new PointF(x, y));
        x += 30;
    }
}

.NET Framework
Available since 1.1

Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Return to top
Show: