public void Cuadro()
{
Brush oSolidBrush
= new LinearGradientBrush
(new Rectangle
(_Izquierda,_Arriba,_Ancho,_Altura
),_ColorRelleno,Color
.White,
45,
false); Pen oPen
= new Pen
(_ColorBorde, _AnchoBorde
);
// Dibuja el área
_Area.FillRectangle(oSolidBrush, _Izquierda, _Arriba, _Ancho, _Altura);
// Dibuja el borde
_Area.DrawRectangle(oPen, _Izquierda, _Arriba, _Ancho, _Altura);
// Dibuja el texto centrado en el cuadro
s = "Texto a dibujar";
// if text empty not draw
if (String.IsNullOrEmpty(s))
return;
// Calculate text position
sizeText = _Area.MeasureString(s, _shapeFont);
textX = Math.Min(pStart.X, pEnd.X) + (Math.Abs(pStart.X - pEnd.X) / 2) - (sizeText.Width / 2);
textY = Math.Min(pStart.Y, pEnd.Y) + (Math.Abs(pStart.Y - pEnd.Y) / 2) - (sizeText.Height / 2);
// Draw text
_Area.DrawString(s, _shapeFont, _shapeFontColorSolidBrush, textX, textY);
}