2016-05-27 4 views
0

テクスチャボックス内の数字だけに次のコードがありますが、数値演算も含めたいと思っています(+、 - 、*など)。このコードをどのようにコードしますか。テキストボックス内の数値オペランドを検証する方法

private void txtCalculation_KeyPress(object sender, KeyPressEventArgs e) 
{ 
    e.Handled = !char.IsDigit(e.KeyChar) && !char.IsControl(e.KeyChar); 
} 
+0

[Parse Math Expression]の可能な複製(http://stackoverflow.com/questions/3972854/parse-math-expression) –

答えて

0

は、あなただけの数字をしたい場合や+、 - 、*、/あなたはこのようなものを使用する必要があります

private char[] validChars = {'+', '-', '*', '/'}; 

private void txtCalculation_KeyPress(object sender, KeyPressEventArgs e) {   
    e.Handled = !char.IsDigit(e.KeyChar) && !char.IsControl(e.KeyChar) && !Array.Exists(validChars, e.KeyChar); 
} 

配列validCharsが有効である追加の文字を定義します。 Array.Existsメソッドを使用すると、配列にメソッドの2番目のパラメータ(この場合はe.KeyChar)で指定された値が含まれているかどうかを確認できます。

関連する問題