Control.Region Właściwość
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Pobiera lub ustawia region okna skojarzony z kontrolką.
public:
property System::Drawing::Region ^ Region { System::Drawing::Region ^ get(); void set(System::Drawing::Region ^ value); };
[System.ComponentModel.Browsable(false)]
public System.Drawing.Region Region { get; set; }
[System.ComponentModel.Browsable(false)]
public System.Drawing.Region? Region { get; set; }
[<System.ComponentModel.Browsable(false)>]
member this.Region : System.Drawing.Region with get, set
Public Property Region As Region
Wartość właściwości
Okno Region skojarzone z kontrolką.
- Atrybuty
Przykłady
W poniższym przykładzie kodu pokazano, jak używać Region właściwości, tworząc przycisk okrągły. Aby uruchomić przykład, wklej następujący kod w formularzu zawierającym przycisk o nazwie roundButton
. W tym przykładzie wymagane Paint jest połączenie zdarzenia z procedurą obsługi zdarzeń zdefiniowaną w przykładzie.
private:
// This method will change the square button to a circular button by
// creating a new circle-shaped GraphicsPath object and setting it
// to the RoundButton objects region.
void roundButton_Paint( Object^ sender,
System::Windows::Forms::PaintEventArgs^ e )
{
System::Drawing::Drawing2D::GraphicsPath^ buttonPath =
gcnew System::Drawing::Drawing2D::GraphicsPath;
// Set a new rectangle to the same size as the button's
// ClientRectangle property.
System::Drawing::Rectangle newRectangle = roundButton->ClientRectangle;
// Decrease the size of the rectangle.
newRectangle.Inflate( -10, -10 );
// Draw the button's border.
e->Graphics->DrawEllipse( System::Drawing::Pens::Black, newRectangle );
// Increase the size of the rectangle to include the border.
newRectangle.Inflate( 1, 1 );
// Create a circle within the new rectangle.
buttonPath->AddEllipse( newRectangle );
// Set the button's Region property to the newly created
// circle region.
roundButton->Region = gcnew System::Drawing::Region( buttonPath );
}
// This method will change the square button to a circular button by
// creating a new circle-shaped GraphicsPath object and setting it
// to the RoundButton objects region.
private void roundButton_Paint(object sender,
System.Windows.Forms.PaintEventArgs e)
{
System.Drawing.Drawing2D.GraphicsPath buttonPath =
new System.Drawing.Drawing2D.GraphicsPath();
// Set a new rectangle to the same size as the button's
// ClientRectangle property.
System.Drawing.Rectangle newRectangle = roundButton.ClientRectangle;
// Decrease the size of the rectangle.
newRectangle.Inflate(-10, -10);
// Draw the button's border.
e.Graphics.DrawEllipse(System.Drawing.Pens.Black, newRectangle);
// Increase the size of the rectangle to include the border.
newRectangle.Inflate( 1, 1);
// Create a circle within the new rectangle.
buttonPath.AddEllipse(newRectangle);
// Set the button's Region property to the newly created
// circle region.
roundButton.Region = new System.Drawing.Region(buttonPath);
}
' This method will change the square button to a circular button by
' creating a new circle-shaped GraphicsPath object and setting it
' to the RoundButton objects region.
Private Sub roundButton_Paint(ByVal sender As Object, _
ByVal e As System.Windows.Forms.PaintEventArgs) Handles roundButton.Paint
Dim buttonPath As New System.Drawing.Drawing2D.GraphicsPath
' Set a new rectangle to the same size as the button's
' ClientRectangle property.
Dim newRectangle As Rectangle = roundButton.ClientRectangle
' Decrease the size of the rectangle.
newRectangle.Inflate(-10, -10)
' Draw the button's border.
'e.Graphics.DrawEllipse(System.Drawing.Pens.Black, newRectangle)
'Increase the size of the rectangle to include the border.
newRectangle.Inflate(1, 1)
' Create a circle within the new rectangle.
buttonPath.AddEllipse(newRectangle)
e.Graphics.DrawPath(Pens.Black, buttonPath)
' Set the button's Region property to the newly created
' circle region.
roundButton.Region = New System.Drawing.Region(buttonPath)
End Sub
Uwagi
Region okna to kolekcja pikseli w oknie, w którym system operacyjny zezwala na rysowanie. System operacyjny nie wyświetla żadnej części okna, która znajduje się poza regionem okna. Współrzędne regionu kontrolki są względne względem lewego górnego rogu kontrolki, a nie obszaru klienta kontrolki.
Uwaga
Kolekcja pikseli zawartych w regionie może nie być ciągła.