C#标签颜色变化

rit*_*tik 3 c# backcolor winforms

所以我正在建立一个非常基本的卡路里计数器.我有3个标签显示总卡路里计数,一个显示我最后的卡路里数量,一个显示我吃的食物数量.

有3个可以增加卡路里,3个可以减少卡路里.所以我想知道我会怎么做:

如果卡路里高于0,背景颜色应变为绿色,如果低于0,则背面颜色应为红色.我知道这不是很多信息,我为此道歉.我是一个菜鸟,但这不是借口.感谢您的帮助!

Rez*_*aei 8

例如,要更改控件的背景颜色,将其BackColor属性设置为颜色就足够了System.Drawing.Color.Red.

例如在你的情况下:

if (calori > 0)
    label1.BackColor = System.Drawing.Color.Green;
else
    label1.BackColor = System.Drawing.Color.Red;
Run Code Online (Sandbox Code Playgroud)

要么:

label1.BackColor = (calori > 0) ? System.Drawing.Color.Green : System.Drawing.Color.Red;
Run Code Online (Sandbox Code Playgroud)


MrD*_*war 5

3个标签,显示总卡路里计数,表示它们已更改。您可以在标签上使用TextChanged事件(在窗体设计器中,按F4键并转到事件菜单)。

private void label1_TextChanged( object sender, EventArgs e )
    {
        if ( this._calories < 0 )
        {
            this.lb_Main.BackColor = Color.Red;
        }
        else
        {
            this.lb_Main.BackColor = Color.Green;
        }
    }
Run Code Online (Sandbox Code Playgroud)