0

なんらかの理由で、何を入れても If ステートメントが常に実行されます。True == False または 0 == 1 のようなことをしたとしても、それはまだ通過します。私がやろうとしているのは、テキストが null であるかどうかを検出してそれに設定することです。したがって、エラーは発生しません。

これはボタン内の私のコードです

private void SearchButton_Click(object sender, EventArgs e)
    {
        reg = String.IsNullOrWhiteSpace(RegText.Text);
        if (reg == true);
        {
            RegText.ResetText();
            RegText.AppendText("-");
        }
        model = String.IsNullOrWhiteSpace(ModelText.Text);
        if (model == true) ;
        {
            ModelText.ResetText();
            ModelText.AppendText("-");
        }
        for (int i = 0; i < MaxCars; i++)
        {

            if (regos[i].Equals(Convert.ToString(RegText.Text)) || models[i].Equals(Convert.ToString(ModelText.Text)) || price[i] == Convert.ToInt32(PriceText.Text))
            {
                Console.WriteLine(regos[i] + " " + models[i] + " " + price[i]);
            }
        }
    }
4

1 に答える 1

1

あなたが入れました; それがエラーを引き起こしているすべての場合の終わりに。これは修正されたコードです:

private void SearchButton_Click(object sender, EventArgs e)
    {
        reg = String.IsNullOrWhiteSpace(RegText.Text);
        if (reg == true)
        {
            RegText.ResetText();
            RegText.AppendText("-");
        }
        model = String.IsNullOrWhiteSpace(ModelText.Text);
        if (model == true) 
        {
            ModelText.ResetText();
            ModelText.AppendText("-");
        }
        for (int i = 0; i < MaxCars; i++)
        {

            if (regos[i].Equals(Convert.ToString(RegText.Text)) || models[i].Equals(Convert.ToString(ModelText.Text)) || price[i] == Convert.ToInt32(PriceText.Text))
            {
                Console.WriteLine(regos[i] + " " + models[i] + " " + price[i]);
            }
        }
    }
于 2013-09-21T08:55:51.353 に答える