none
c#中textbox要如何去判斷禁止使用空白然後跳出MessageBox RRS feed

  • 問題

  • 請問C# Windows Form
    如果TEXEBOX沒有輸入數值時,想要出現MessageBox(請輸入數值)的程式要怎麼寫
    我的程式:
    private void button1_Click(object sender, EventArgs e)
            {
                double c = Int32.Parse(textBox3.Text);
                double d = Int32.Parse(textBox4.Text);
                double a;
                a = c + d;
                textBox1.Text = Math.Ceiling(c).ToString();
            }

    我要的結果:當textBox3.Text未輸入數值時按下button1則跳出MessageBox

     

    我的程式如下:
    private void button1_Click(object sender, EventArgs e)
    {
    double c = Int32.Parse(textBox3.Text);
    double d = Int32.Parse(textBox4.Text);
    double a;
    a = c + d;
    textBox1.Text = Math.Ceiling(c).ToString();
    if (textBox3.Text == "")
    MessageBox.Show("請輸入數值");

    }
    有錯誤,請問哪裡發生錯誤?

    2011年5月22日 下午 02:10

解答

  • private void button1_Click(object sender, EventArgs e)
    {

    if (string.IsNullOrEmpty(textBox3.Text))
    {
       MessageBox.Show("請輸入數值");
       return;
    }

    double c = Int32.Parse(textBox3.Text);

    double d = Int32.Parse(textBox4.Text);
    double a;
    a = c + d;
    textBox1.Text = Math.Ceiling(c).ToString();

    }


    小朱的技術隨手寫:http://www.dotblogs.com.tw/regionbbs/
    雲端學堂Facebook: http://www.facebook.com/pages/StudyAzurecom-yun-duan-xue-tang/155855707799579
    2011年5月22日 下午 02:51
    版主

所有回覆

  • 檢查 string.IsNullOrEmpty(textBox3.Text) 是否為 true,是就顯示 Message Box。
    小朱的技術隨手寫:http://www.dotblogs.com.tw/regionbbs/
    雲端學堂Facebook: http://www.facebook.com/pages/StudyAzurecom-yun-duan-xue-tang/155855707799579
    2011年5月22日 下午 02:32
    版主
  • 謝謝

    還是有點不懂,有更具體一點的說法嗎?

    或者是要添加程式呢?

    不好意思,初學者,請見諒

    2011年5月22日 下午 02:49
  • private void button1_Click(object sender, EventArgs e)
    {

    if (string.IsNullOrEmpty(textBox3.Text))
    {
       MessageBox.Show("請輸入數值");
       return;
    }

    double c = Int32.Parse(textBox3.Text);

    double d = Int32.Parse(textBox4.Text);
    double a;
    a = c + d;
    textBox1.Text = Math.Ceiling(c).ToString();

    }


    小朱的技術隨手寫:http://www.dotblogs.com.tw/regionbbs/
    雲端學堂Facebook: http://www.facebook.com/pages/StudyAzurecom-yun-duan-xue-tang/155855707799579
    2011年5月22日 下午 02:51
    版主
  • 謝謝
    我懂了
    原來放在前面跟後面有差
    2011年5月22日 下午 03:49
  • 您好

    建議您將 Int32.Parse 改為 Int32.TryParse 方法,可多判斷輸入字串是否能進行轉換為 Int32

    http://msdn.microsoft.com/zh-tw/library/system.int32.tryparse(v=vs.80).aspx


    歡迎參觀我的Blog.NET菜鳥自救會
    2011年5月22日 下午 04:22
    版主