This article has been dead for over three months
You
//DiamondDrake 2010 www.DiamondDrake.com
using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
using System.Drawing.Text;
using System.Windows.Forms;
namespace DiamondDrake.Controls
{
public class LabelBox : Control
{
public LabelBox()
{
//Set up double buffering and a little extra.
this.SetStyle(ControlStyles.UserPaint | ControlStyles.OptimizedDoubleBuffer |
ControlStyles.AllPaintingInWmPaint | ControlStyles.SupportsTransparentBackColor,
true);
//set up some default values
this.BackColor = Color.Transparent;
_stringformat = new StringFormat();
_stringformat.LineAlignment = StringAlignment.Near;
_stringformat.Alignment = StringAlignment.Center;
this.Font = new Font("Microsoft Sans Serif", 12F);
}
private StringFormat _stringformat;
public StringAlignment VerticalAlignment
{
get { return _stringformat.LineAlignment; }
set { _stringformat.LineAlignment = value; this.Invalidate(); }
}
public StringAlignment HorizontalAlignment
{
get { return _stringformat.Alignment; }
set { _stringformat.Alignment = value; this.Invalidate(); }
}
protected override void OnPaint(PaintEventArgs e)
{
base.OnPaint(e);
e.Graphics.DrawString(this.Text, this.Font, new SolidBrush(this.ForeColor), this.ClientRectangle, _stringformat);
}
}
}