2012-04-20 60 views
1

有没有什么办法可以让我改变标签的模式,即。而不是关闭只是充满红色可以说,我想要的背景色为红色,它必须有垂直线/水平线等等)如何更改c中的标签填充模式#

+1

您可以指定您正在使用的框架吗? WinForms,WPF,QT,...?这个问题很不明确。 – 0xBADF00D 2012-04-20 07:48:05

回答

2

你可以做到这一点

Graphics g = lable1.CreateGraphics(); 
    g.FillRectangle(Brushes.Red, 0, 0, 100, 100); 
    g.DrawLine(Pens.Black,0,0,100,0); 
+0

感谢您的回复,我会尝试 – Privesh 2012-04-20 07:56:20

+0

你不需要投入控制 – Reniuz 2012-04-20 07:59:29

+0

我同意,代码编辑。感谢您的建议 – Likurg 2012-04-20 08:02:17

2

您可以创建你的Label控件继承标签并覆盖OnPaintBackground

class MyLabel: System.Windows.Forms.Label { 

    protected override void OnPaintBackground(System.Windows.Forms.PaintEventArgs pevent) { 
     HatchBrush brush = new HatchBrush(HatchStyle.Cross, Color.Red, Color.White); 
     pevent.Graphics.FillRectangle(brush, ClientRectangle); 
    } 
} 
+0

是的,但它就像“重新发明轮子”恕我直言 – Likurg 2012-04-20 08:04:58

+0

但我会upvote,因为这个变种工作 – Likurg 2012-04-20 08:07:17

+0

你是什么意思? – alfoks 2012-04-20 08:07:36