2014-01-05 2 views
-5

로그인 양식과 등록 양식이있는 Windows 응용 프로그램이 있습니다. 등록 양식에는 4 textbox이 있으며 그 중 하나는 번호 만 허용되는 사용자 연락처 번호 (모바일 번호)를 얻기위한 것입니다. 사용자가 integer이 아니라 응용 프로그램과 마찬가지로 char을 입력 할 수있게하려면 ajax 텍스트 필터를 사용하여 정수 만 입력하도록 제한하십시오.윈도우 응용 프로그램의 정수 전용 텍스트 상자

Windows 응용 프로그램이 사용자를 제한 할 수 있도록 이러한 유형의 기능이 있습니까?

+0

http://msdn.microsoft.com/en-us/library/ms229644(v=vs.90).aspx –

답변

0

TextChanged 이벤트를 처리하고 TextBox에 숫자 (0-9) 이외의 키가 표시되지 않도록하십시오.
Regex을 사용하여 텍스트에 문자가 포함되어 있는지 여부를 확인할 수 있습니다.

다른 옵션은 텍스트를 처리하기 전에 텍스트 입력을 확인하고 숫자 이외의 문자가 포함되어 있으면 사용자에게 경고를 보내고 TextBox의 텍스트를 변경할 수 있도록 허용하는 것입니다.

 private void Text_Changed(object sender, EventArgs e) 
    { 
     if(!char.isDigit(textBox1.Text[textBox1.Text.Length-1])) 
     { 
      string temp = string.SubString(textBox1.Text, 0, textBox1.Text.Length-1) ; 
      textBox1.Text = temp ; 
     } 
    } 

WORKING는 : - 때마다 텍스트 변경, 그것은 마지막 문자가 추가 확인하고 그 다음이 아닌 숫자 인 경우, 그것을 표시하지 않습니다.
예를 들어, 971을 입력 한 후 r을 입력하면 if 조건이 참이되고 Text 필드가 TextBox이면 971로 텍스트가 재설정되고 "r"이 표시되지 않습니다.

2) 그렇지 않으면, 당신은 같은 자리하는 MaskedTextBox enter image description here 변경합니다 MaskedTextBox에의 마스크 속성을 사용할 수 있습니다 : - :
http://msdn.microsoft.com/en-us/library/system.windows.forms.maskedtextbox(v=vs.110).aspx
http://www.codeproject.com/Tips/666932/Using-Masked-TextBox-in-NET
http://www.codeproject.com/Articles/1534/Masked-C-TextBox-Control

enter image description here

은 다음 링크를 확인

3) OPTION-3 : 파생 된 후 사용자 지정 컨트롤을 만들 수 있습니다 TextBox 클래스
http://msdn.microsoft.com/en-us/library/ms229644(v=vs.90).aspx

관련 문제