在C#中单击按钮后更改文本的颜色..?

时间:2014-12-19 07:02:04

标签: c# winforms

这是我的代码,我试图在按钮点击后更改文本的颜色,但没有发生

我的颜色功能不明确,因为我使用itextsharpsystem.drawing库...

我尝试使用下面的代码。虽然它没有给出错误但是文本的颜色没有改变..我尝试使用clickedbuttonForecolor也起作用,但它仍然保持不变..两个函数都不起作用

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

clickedbutton.Forecolor= System.Drawing.Color.Red;

我想更改

下的文字颜色
ClickedButton.Text="Input Processing"

任何输入都将受到高度赞赏。我知道这是一个非常愚蠢的问题,但我很困惑:(

我的代码是

private void btn_Preprocess_Click(object sender, EventArgs e)
{
    Button clickedButton = (Button)sender;
    clickedButton.Text = "Input Processing...";
    btn_Preprocess.ForeColor = System.Drawing.Color.Red;
    clickedButton.Enabled = false;

    if (folderBrowserDialog1.ShowDialog() == DialogResult.OK)
        SourcePath = folderBrowserDialog1.SelectedPath;
    string searchPattern = "*.*";
    DirectoryInfo di = new DirectoryInfo(SourcePath);

    GetFiles1(di, searchPattern);

    MessageBox.Show("Process Complete");
}

2 个答案:

答案 0 :(得分:1)

这是因为您正在尝试更改已禁用按钮的前景色。您可以使用EnabledChanged事件来设置禁用按钮的前景色。

private void Button1_EnabledChanged(object sender, System.EventArgs e)
    {
         Button1.ForeColor = Button1.enabled == false ? System.Drawing.Color.Red :System.Drawing.Color.Black;

    }

答案 1 :(得分:0)

禁用按钮将使用与ForeColor上设置的颜色不同的颜色。 如果你尝试不禁用按钮clickedButton.ForeColor = System.Drawing.Color.Red应该工作。