/// <summary> /// Limpia los recursos que se estén utilizando. /// </summary> protected override void Dispose(bool blnDisposing) { // Elimina los objetos if (blnDisposing) { objStyle = null; } // Llama al base para eliminar los objetos base.Dispose(blnDisposing); }
/// <summary> /// Constructor del control /// </summary> public LabelRound() { // Inicializa los estilos SetStyle(ControlStyles.DoubleBuffer, true); SetStyle(ControlStyles.AllPaintingInWmPaint, true); SetStyle(ControlStyles.UserPaint, true); SetStyle(ControlStyles.SupportsTransparentBackColor, true); // Inicializa las propiedades Name = "LabelRound"; Text = Name; Size = new Size(368, 288); // Inicializa los estilos de etiqueta y panel Style = new StyleBauControl(); }
/// <summary> /// Constructor del control /// </summary> public CollapsableGroupBox() { // Inicializa los estilos SetStyle(ControlStyles.DoubleBuffer, true); SetStyle(ControlStyles.AllPaintingInWmPaint, true); SetStyle(ControlStyles.UserPaint, true); SetStyle(ControlStyles.SupportsTransparentBackColor, true); // Inicializa las propiedades Name = "GroupBox"; Text = Name; Size = new Size(300, 100); Padding = new Padding(5, cnstIntHeightHeader + 2, 10, 10); // Inicializa la altura real intRealHeight = Size.Height; // Inicializa los estilos de etiqueta y panel StyleLabel = new StyleBauControl(); StylePanel = new StyleBauControl(); // Inicializa el temporizador tmrCollapse.Interval = 1; tmrCollapse.Enabled = false; tmrCollapse.Tick += new EventHandler(tmrCollapse_Tick); }
/// <summary> /// Pinta un panel con sombra y fondo con gradiante /// </summary> public static void PaintRoundedPanel(Graphics grpCanvas, int intLeft, int intTop, int intWidth, int intHeight, StyleBauControl objStyle) { // Ajusta el ancho y el alto intWidth = intWidth - 1; intHeight = intHeight - 1; // Si hay una sombra, quita su anchura y altura if (objStyle.ShadowColor != Color.Transparent) { intWidth -= objStyle.ShadowThickness; intHeight -= objStyle.ShadowThickness; } // Dibuja la sombra si es necesaria if (objStyle.ShadowColor != Color.Transparent) { using (SolidBrush brsShadow = new SolidBrush(objStyle.ShadowColor)) { clsHelperDrawing.DrawRoundedShadow(grpCanvas, intLeft + objStyle.ShadowThickness - 1, intTop + objStyle.ShadowThickness - 1, intWidth + objStyle.ShadowThickness - 1, intHeight + objStyle.ShadowThickness - 1, objStyle.RoundCorners, objStyle.AngleCorners, brsShadow); } } // Dibuja el rectángulo con el gradiante adecuado using (Pen penBorder = new Pen(objStyle.BorderColor, objStyle.BorderWidth)) { if (objStyle.GradientMode == StyleBauControl.GroupBoxGradientMode.None) { using (SolidBrush brsBackGround = new SolidBrush(objStyle.BackgroundColor)) clsHelperDrawing.FillRoundedRectangle(grpCanvas, intLeft, intTop, intWidth, intHeight, objStyle.RoundCorners, objStyle.AngleCorners, brsBackGround, penBorder); } else { clsHelperDrawing.FillRoundedRectangle(grpCanvas, intLeft, intTop, intWidth, intHeight, objStyle.RoundCorners, objStyle.AngleCorners, objStyle.BackgroundColor, objStyle.BackgroundGradientColor, (LinearGradientMode)objStyle.GradientMode, penBorder); } } }
/// <summary> /// Trata el evento de cambio de estilo /// </summary> private void Style_OnChangedStyle(StyleBauControl objSender) { Invalidate(); }