首页 文章

TextBox为空时如何禁用按钮?

提问于
浏览
1

我想禁用按钮,直到TextBox中有文本 . 我该怎么做?我知道任何事情,所以我应该添加的代码非常棒 . 我的代码:
private void button1_Click(object sender,EventArgs e){

double wiek = double.Parse(textBox1.Text);
        double gotowka = double.Parse(textBox2.Text);

        if (wiek >= 15 && gotowka >= 30 || gotowka >= 130)
        {
            MessageBox.Show("Możesz wejść!");
        }
        else
        {
            MessageBox.Show("Nie możesz wejść!");
        }

        if (wiek >= 15 && gotowka >= 30)
        {
            double reszta = gotowka - 30;
            textBox3.Text = reszta.ToString();
        }

        if (wiek < 15 && gotowka >= 130)
        {
            double reszta2 = gotowka - 130;
            textBox3.Text = reszta2.ToString();

        }

        if (wiek < 15 && gotowka >= 30)
        {
            double reszta3 = gotowka;
            textBox3.Text = reszta3.ToString();
        }

        if (wiek >=15 && gotowka < 30)
        {
            double reszta4 = gotowka;
            textBox3.Text = reszta4.ToString();
        }
        if (wiek >= 15 && gotowka >= 130)
        {
            double reszta5 = gotowka - 30;
            textBox3.Text = reszta5.ToString();
        }
        if (wiek < 15 && gotowka >= 130)
        {
            double reszta6 = gotowka - 130;
            textBox3.Text = reszta6.ToString();
        }

2 回答

  • 0

    我就是这样做的!步骤1.双击Windows窗体设计器中的文本框,添加TextChanged事件 . 步骤2.将此代码输入到事件中,将 MyTextBox 替换为文本框的名称,将 MyButton 替换为您的按钮名称!

    if (MyTextBox.Text == "")
    {
        //(if you would like to make the button disappear, do this)
        MyButton.Visible = false;
        //(if you would like to make the button gray out, do this)
        MyButton.Enabled = false;
    }
    else
    {
    
        //(if you would like to make the button disappear, do this)
        MyButton.Visible = true;
        //(if you would like to make the button gray out, do this)
        MyButton.Enabled = true;
    
    }
    

    希望这可以帮助!

    Techcraft7 :)

  • 0

    为此,您需要为文本框添加事件处理程序 . 在Leave或TextChanged上 . 在那里你可以启用和禁用按钮 .

    另一方面,你是否想要这个只是因为如果文本框为空,解析会抛出异常?即使它不是空的,它也可以包含任何无法转换为double的文本 .

    一个更好的解决方案可能是改变

    double wiek = double.Parse(textBox1.Text);
    double gotowka = double.Parse(textBox2.Text);
    

    double wiek;
    double gotowka;
    
    bool isParsed = double.TryParse(textBox1.Text, out wiek);
    if (!isParsed)
    {
       //TODO: some error handling, telling the user it is not a number
       MessageBox.Show("Nie numer!");
       return;
    }
    
    isParsed = double.TryParse(textBox2.Text, out gotowka);
    if (!isParsed)
    {
       //TODO: some error handling, telling the user it is not a number
       MessageBox.Show("Nie numer!");
       return;
    }
    

相关问题