Shape.Region, propriété
Obtient ou définit la région de fenêtre associée à un contrôle Line ou Shape.
Espace de noms : Microsoft.VisualBasic.PowerPacks
Assembly : Microsoft.VisualBasic.PowerPacks.Vs (dans Microsoft.VisualBasic.PowerPacks.Vs.dll)
Syntaxe
'Déclaration
<BrowsableAttribute(False)> _
Public Property Region As Region
[BrowsableAttribute(false)]
public Region Region { get; set; }
[BrowsableAttribute(false)]
public:
property Region^ Region {
Region^ get ();
void set (Region^ value);
}
[<BrowsableAttribute(false)>]
member Region : Region with get, set
function get Region () : Region
function set Region (value : Region)
Valeur de propriété
Type : Region
Region de la fenêtre associé au contrôle.
Notes
Le zone de fenêtre est une collection de pixels dans la fenêtre dans laquelle le système d'exploitation permet le dessin. Le système d'exploitation n'affiche pas toute partie d'une fenêtre qui est en dehors de la zone de fenêtre. Les coordonnées de la zone d'un contrôle sont par rapport au coin supérieur gauche du contrôle, et non à la zone client du contrôle.
Exemples
L'exemple suivant montre comment utiliser le Region propriété à modifier un RectangleShape dans une ellipse semi-transparent. Cet exemple suppose que vous disposez d'un RectangleShape nommé RectangleShape1 sur un formulaire. Pour voir l'effet semi-transparent, attribuer une image à la BackgroundImage propriété du formulaire.
Private Sub RectangleShape1_Paint(
ByVal sender As Object,
ByVal e As System.Windows.Forms.PaintEventArgs
) Handles RectangleShape1.Paint
Dim shapePath As New System.Drawing.Drawing2D.GraphicsPath
' Set a new rectangle to the same size as the RectangleShape's
' ClientRectangle property.
Dim newRectangle As Rectangle = RectangleShape1.ClientRectangle
' Decrease the size of the rectangle.
newRectangle.Inflate(-10, -10)
' Draw the new rectangle's border.
e.Graphics.DrawEllipse(System.Drawing.Pens.Black, newRectangle)
' Create a semi-transparent brush.
Dim br As New SolidBrush(Color.FromArgb(128, 0, 0, 255))
' Fill the new rectangle.
e.Graphics.FillEllipse(br, newRectangle)
'Increase the size of the rectangle to include the border.
newRectangle.Inflate(1, 1)
' Create an oval region within the new rectangle.
shapePath.AddEllipse(newRectangle)
e.Graphics.DrawPath(Pens.Black, shapePath)
' Set the RectangleShape's Region property to the newly created
' oval region.
RectangleShape1.Region = New System.Drawing.Region(shapePath)
End Sub
private void rectangleShape1_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
{
System.Drawing.Drawing2D.GraphicsPath shapePath = new System.Drawing.Drawing2D.GraphicsPath();
// Set a new rectangle to the same size as the RectangleShape's
// ClientRectangle property.
Rectangle newRectangle = rectangleShape1.ClientRectangle;
// Decrease the size of the rectangle.
newRectangle.Inflate(-10, -10);
// Draw the new rectangle's border.
e.Graphics.DrawEllipse(System.Drawing.Pens.Black, newRectangle);
// Create a semi-transparent brush.
SolidBrush br = new SolidBrush(Color.FromArgb(128, 0, 0, 255));
// Fill the new rectangle.
e.Graphics.FillEllipse(br, newRectangle);
//Increase the size of the rectangle to include the border.
newRectangle.Inflate(1, 1);
// Create an oval region within the new rectangle.
shapePath.AddEllipse(newRectangle);
e.Graphics.DrawPath(Pens.Black, shapePath);
// Set the RectangleShape's Region property to the newly created
// oval region.
rectangleShape1.Region = new System.Drawing.Region(shapePath);
}
Sécurité .NET Framework
- Confiance totale accordée à l'appelant immédiat. Ce membre ne peut pas être utilisé par du code d'un niveau de confiance partiel. Pour plus d'informations, voir Utilisation de bibliothèques à partir de code d'un niveau de confiance partiel.
Voir aussi
Référence
Microsoft.VisualBasic.PowerPacks, espace de noms
Autres ressources
Comment : dessiner des lignes avec le contrôle LineShape (Visual Studio)
Comment : dessiner des formes avec les contrôles OvalShape et RectangleShape (Visual Studio)