私は4 textboxes
持っている:(お金は量よりも大きい場合)C#Winフォームテキストボックスの検証エラー
- お金を支払う金額(顧客のお金を確認してください)
- 変更
- をし、残高(金額が金額より少ない場合)
最後のtextbox
は、お客様のお金r)。
私はtextBoxInputのTextChanged
ハンドラ(私は、それが自動的に更新されますそのテキストボックスにユーザが入力する何かするたびに思っています)の中に私のコードを配置している:それはいつでもしかし、正しく実行
private void textBoxInput_TextChanged(object sender, EventArgs e)
{
textBoxMoney.Text = textBoxInput.Text;
if (int.Parse(textBoxAmount.Text) > int.Parse(textBoxMoney.Text))
{
int balance = int.Parse(textBoxAmount.Text) - int.Parse(textBoxMoney.Text);
textBoxBalance.Text = balance.ToString();
}
if (int.Parse(textBoxMoney.Text) > int.Parse(textBoxAmount.Text))
{
int change = int.Parse(textBoxMoney.Text) - int.Parse(textBoxAmount.Text);
textBoxChange.Text = change.ToString();
}
}
textbox
のバックスペースを押す(またはデータを消去する)と、フォーマットエラーが発生します。私はそれに手紙を入れてもエラーが出る。ユーザーが手紙を入力してデータが消去されたときにはどうすれば表示されるのを防ぐことができますか?また、exの値を大きくすると、別のエラーが表示されます。
支払額= 600、入力= 1000、残高テキストボックス= 550、変更テキストボックス= 330です。正しく計算されません。誰か助けてくれますか?お金を扱う場合
大変ありがとうございます!私は解析とtryparseの違いを調べなければなりません:)) –
@rjtubera [MSDN:Int32.TryParse Method](http://msdn.microsoft.com/en-us/library/f02979c7)へのリンクです.aspx) – LarsTech
そして、私はこれらのTextBox-esでLetterを許可しないことでKeyPressEventを処理することを推奨します。 – Burimi