2017-08-09 10 views
-5

私は窓の形でComboBox要素を持っています。デフォルトのコレクションをロードします。 ユーザーは任意の値を手動で入力できます。ユーザーがアルファベット文字を入力できないようにするにはどうすればよいですか?Combobox C#でアルファベットの記号を無効にするにはどうすればいいですか?

数値入力のみを許可するか、このオプションを完全に無効にします。

+0

を参照してください[良い質問をする方法](https://stackoverflow.com/help/how-to-ask) – KiwiPiet

+0

を追加することもできますかSOは、技術的な問題を解決するのに役立ちます。しかし、Q&Aの構造のため、実際にはあなたのことに関するチュートリアルを提供するのはうまくできません。 – code4life

答えて

-1

charcterの試合が

private void comboBox1_TextChanged(object sender, EventArgs e) 
{ 
    string rex=comboBox1.Text; 
    Regex regex = new Regex(@"^\d$"); 


    if (regex.IsMatch(compare)) 
    { 
     rex= Regex.Replace(rex, @"(?<=\d),(?=\d)|[.]+(?=,)[A-Z]", ""); 
    } 
    comboBox1.Text=rex; 
    } 

それを削除する場合は、これはあなたを助けることができるCombobox_TextChangedイベントでは一例として 正規表現を使用することができます。 Regex for numbers only

+1

質問に答えないようです(コンボボックスに何も入力しないようにwinformsの質問に関連する文字列をチェックする方法を示しています) –

+0

これはいつですか?どんなイベントで? – Daniel

+0

second regは何を表していますか? – Daniel

1

は数字だけが

実際には、あなたはこの単純な要件のための正規表現を必要としないことができます。

private void comboBox1_TextChanged(object sender, EventArgs e) 
{ 
    if (comboBox1.Text.Any(x => !char.IsDigit(x))) 
    { 
     comboBox1.Text = string.Concat(comboBox1.Text.Where(char.IsDigit)); 
     comboBox1.Select(comboBox1.Text.Length, 0); 
    } 
} 

また、あなたは何を試してみました?System.Media.SystemSounds.Beep.Play();

関連する問題