在C#中更改Label的颜色

Gee*_*Djo 4 .net c# chat

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

谢谢

mus*_*fan 29

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

myLabel.ForeColor = System.Drawing.Color.Red;
Run Code Online (Sandbox Code Playgroud)

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

myLabel.ForeColor = Color.FromArgb(0, 0, 0);//(R, G, B) (0, 0, 0 = black)
Run Code Online (Sandbox Code Playgroud)

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

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

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


Ars*_*had 7

你可以尝试这个Color.FromArgb:

Random rnd = new Random();
lbl.ForeColor = Color.FromArgb(rnd.Next(255), rnd.Next(255), rnd.Next(255));
Run Code Online (Sandbox Code Playgroud)