C#使文本在检查时更改颜色

时间:2018-10-05 13:37:23

标签: c#

我试图在选中一个复选框时使按钮的文本更改颜色,但是由于某种原因,我只是不知道该怎么做。我是否需要编写If语句,如果要怎么做?

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
    }

    private void button1_Click(object sender, EventArgs e)
    {
        ColourCheckBox.ForeColor = Color.Red;
    }

    private void ColourCheckBox_CheckedChanged(object sender, EventArgs e)
    {
        ColourCheckBox.ForeColor = Color.Black;    
    }
}

3 个答案:

答案 0 :(得分:1)

您的问题是如此晦涩,但是基于我的理解,您应该检查Checked属性。

private void ColourCheckBox_CheckedChanged(object sender, EventArgs e)
{
    if (ColourCheckBox.Checked)
    {
        ColourCheckBox.ForeColor = Color.Black;
    }
    else
    {
        ColourCheckBox.ForeColor = Color.Red;
    }
}

答案 1 :(得分:0)

CheckedChanged事件中,您可以使用Checked属性:

ColourCheckBox.ForeColor = ColourCheckBox.Checked ? Color.Black : Color.Red;

在“三重状态”复选框中,如果有3种颜色,则可以打开CheckState值:

  1. 未选中= 0
  2. 已检查= 1
  3. 不确定= 2

答案 2 :(得分:0)

使用System.Drawing;

private void checkBox1_CheckedChanged(object sender, EventArgs e)
        {
            if (checkBox1.Checked)
                button1.ForeColor = Color.Red;
        }