在C#中更改Label的颜色

时间:2013-04-09 15:28:26

标签: c# .net chat

我正在使用C#进行聊天程序,我需要为每个用户提供不同的颜色, =>所以我需要一个函数来改变C#中的写作颜色

由于

2 个答案:

答案 0 :(得分:27)

我将假设这是一个WinForms问题(感觉就像它是一个“程序”而不是网站/应用程序)。在这种情况下,您可以简单地执行以下操作来更改标签的文本颜色:

myLabel.ForeColor = System.Drawing.Color.Red;

或您选择的任何其他颜色。如果您想更具体,可以使用RGB值,如下所示:

myLabel.ForeColor = Color.FromArgb(0, 0, 0);//(R, G, B) (0, 0, 0 = black)

可以通过多种方式为不同的用户提供不同的颜色。例如,您可以允许每个用户指定自己的RGB值颜色,将它们存储在某处,然后在用户“连接”时加载它们。

另一种方法可能是使用2种颜色 - 1为当前用户(运行应用程序),另一种颜色为其他人。这将有助于用户快速识别他们自己的消息。

第三种方法可能是随机生成颜色 - 但是你可能会得到与你的背景不相符的冲突值,所以我建议不要采用这种方法。您可以拥有一个预定义的“可接受”颜色列表,只需从该列表中为每个加入的用户弹出一个颜色。

答案 1 :(得分:7)

您可以使用Color.FromArgb

尝试此操作
Random rnd = new Random();
lbl.ForeColor = Color.FromArgb(rnd.Next(255), rnd.Next(255), rnd.Next(255));