4

私の目標: textbox で 123.45、0.45、1004.72 などの 10 進数を受け入れるようにします。ユーザーが a、b、c などの文字を入力した場合、プログラムはユーザーに数字のみを入力するように警告するメッセージを表示する必要があります。

私の問題:私のコードは、1003 や 567 や 1 などの数字のみをチェックします。123.45 や 0.45 などの 10 進数はチェックしません。テキスト ボックスで 10 進数をチェックするにはどうすればよいですか? 以下は私のコードです:

namespace Error_Testing
{

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

        private void textBox1_TextChanged(object sender, EventArgs e)
        {
            string tString = textBox1.Text;
            if (tString.Trim() == "") return;
            for (int i = 0; i < tString.Length; i++)
            {
                if (!char.IsNumber(tString[i]))
                {
                    MessageBox.Show("Please enter a valid number");
                    return;
                }
            }
            //If it get's here it's a valid number
        }
    } 
}

私は初心者で、事前に助けてくれてありがとう. :)

4

3 に答える 3

0

decimal.Tryparse は、"," 文字を含む文字列に対して true を返します。たとえば、"0,12" のような文字列は true を返します。

于 2015-06-28T05:40:34.850 に答える