解析C#中如何把控件的边框角画为圆弧
private void Draw(Graphics graphics, Control control)
{
float X = float.Parse(control.Width.ToString()) - 1;
float Y = float.Parse(control.Height.ToString()) - 1;
PointF[] pointfs = {
new PointF(2, 0),
new PointF(X-2, 0),
new PointF(X-1, 1),
new PointF(X, 2),
new PointF(X, Y-2),
new PointF(X-1, Y-1),
new PointF(X-2, Y),
new PointF(2, Y),
new PointF(1, Y-1),
new PointF(0, Y-2),
new PointF(0, 2),
new PointF(1, 1)
};
GraphicsPath path = new GraphicsPath();
path.AddLines(pointfs);
Pen pen = new Pen(Color.FromArgb(150, Color.Blue), 1);
pen.DashStyle = DashStyle.Solid;
graphics.DrawPath(pen, path);
}
首先要把控件注册一个事件:控件名称.Paint+=事件名称,然后把以上函数进行传参,如:Draw(e.Graphics, this.control);