如题

解决方案 »

  1.   

    e.Graphics.Clear(pnl.BackColor);                   Rectangle Rtg_LT = new Rectangle();               Rectangle Rtg_RT = new Rectangle();               Rectangle Rtg_LB = new Rectangle();               Rectangle Rtg_RB = new Rectangle();               Rtg_LT.X = 0; Rtg_LT.Y = 7; Rtg_LT.Width = 10; Rtg_LT.Height = 10;               Rtg_RT.X = e.ClipRectangle.Width - 11; Rtg_RT.Y = 7; Rtg_RT.Width = 10; Rtg_RT.Height = 10;               Rtg_LB.X = 0; Rtg_LB.Y = e.ClipRectangle.Height - 11; Rtg_LB.Width = 10; Rtg_LB.Height = 10;               Rtg_RB.X = e.ClipRectangle.Width - 11; Rtg_RB.Y = e.ClipRectangle.Height - 11; Rtg_RB.Width = 10; Rtg_RB.Height = 10;                   Color color = Color.FromArgb(51, 94, 168);               Pen Pen_AL = new Pen(color, 1);               Pen_AL.Color = color;               Brush brush = new HatchBrush(HatchStyle.Divot, color);             e.Graphics.DrawString(pnl.Text, pnl.Font, brush, 6, 0);               e.Graphics.DrawArc(Pen_AL, Rtg_LT, 180, 90);               e.Graphics.DrawArc(Pen_AL, Rtg_RT, 270, 90);               e.Graphics.DrawArc(Pen_AL, Rtg_LB, 90, 90);               e.Graphics.DrawArc(Pen_AL, Rtg_RB, 0, 90);               e.Graphics.DrawLine(Pen_AL, 5, 7, 6, 7);               e.Graphics.DrawLine(Pen_AL, e.Graphics.MeasureString(pnl.Text, pnl.Font).Width + 3, 7, e.ClipRectangle.Width - 7, 7);               e.Graphics.DrawLine(Pen_AL, 0, 13, 0, e.ClipRectangle.Height - 7);               e.Graphics.DrawLine(Pen_AL, 6, e.ClipRectangle.Height - 1, e.ClipRectangle.Width - 7, e.ClipRectangle.Height - 1);               e.Graphics.DrawLine(Pen_AL, e.ClipRectangle.Width - 1, e.ClipRectangle.Height - 7, e.ClipRectangle.Width - 1, 13);  
      

  2.   

    不行呢,好多属性都没有,555  windows mobile
      

  3.   

    你这个是Silverlight中的吧,其实楼主完全没必要重绘或者做一个原型的控件,你可以做几张一样的图片只是颜色不同,然后在根据按钮的事件来给按钮判断付哪张图片,将按钮的边框背景设置成透明的就OK了
      

  4.   

    在button的Paint事件下写。将pnl改成你button的名字