윈도우7에서 텍스트 박스에 포커스가 가게 되면 키패드가 자동으로 열린다.
하지만 입력을 완료하고 텍스트 박스를 닫고 싶지만 닫을려면
“Back” 버튼을 누르던가 다른 컨트롤을 터치하여 포커스를 옮겨야만 한다.
“Enter”키가 있지만 나가는 버튼은 아니다. 아마 TextBox내에서 엔터 치는 기능인듯?
하지만 숫자같은걸 입력하는 즉 짧은 단어를 입력하고 Enter를 누르면 키패드가 닫히게 하고 싶다.
정말 간단하다. 하지만 약간 꼼수일수도 있고 깔끔하게 컨트롤로 만드는것도 불가능하다.
자 왜 컨트롤로 못 만드는지와 어떻게 하는지 알아보자.
일단 해당 텍스트 박스의 KeyDown 이벤트를 받아야 한다.
TaxTextBox.KeyDown += new KeyEventHandler(TaxTextBox_KeyDown);
받았으면 아래처럼 Enter키를 받고서 focus를 Page에 준다.
/// <summary>
/// Enter키를 눌렀을시 focus를 페이지에 주어서 키패드가 사라지게 함
/// </summary>
/// <param name="e"></param>
private void EscapeKeypad(System.Windows.Input.KeyEventArgs e)
{
if (e.Key == Key.Enter)
{
this.Focus();
}
}
그러면 끝~
'Windows Phone 7' 카테고리의 다른 글
[wp7] childrun add한 UserControl 안에서 remove하기 (0) | 2010.09.28 |
---|---|
[wp7] Regex를 이용해서 숫자 형식을 바꾸어보자.(정규표현식) (0) | 2010.09.27 |
[wp7] DLL 레퍼런스 추가 할때 지정된 경로에? (0) | 2010.09.09 |
[wp7] Behind코드에서 폰트바꾸기 (0) | 2010.09.07 |
[wp7] Month 입력 국제화 하기 (0) | 2010.09.07 |