1文字を削除し、ユーザがテキストボックスを押すのを控除したい場合は-
とします。私は、ユーザーがイベントkey_press
で二度マイナスキーを押していないことを検証:文字列中の途中または末尾の文字をマイナス( - )で削除する方法#
if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar) && (e.KeyChar != '.') && (e.KeyChar != '-'))
{
e.Handled = true;
}
// only allow one minus -
if (e.KeyChar == '-' && ((sender as TextBox).Text.IndexOf('-') > -1))
{
e.Handled = true;
}
ユーザーが文字列の途中または最後にマイナス記号キーを押したときに問題があります。
1000 - 00 < ---
2000.00- <無効---
-1000.00 <無効---有効
どのように私はマイナス記号があることを確認することができます。たとえばテキストボックスの内容を開始しますか?
なぜ値をダブルに変換しようとしないのですか? – Wjdavis5
入力が無効であることをユーザーに警告するべきではありませんか?ユーザーが1000または-1000を意味しましたか?あなたはどのようにしてどのように決定できますか? "どうすれば" == "間違っていれば責任を引き受ける" –
こんにちは、私は10進数に変換しようとしますが、ユーザーが1つの数量を書き込むと「フォーマット例外」を表示します。 –