2013-05-09 1 views
0

UniformGrid 내에 여러 텍스트 상자가 있습니다.클릭시 WPF 텍스트 상자의 모든 텍스트를 선택하는 방법

클릭하면 텍스트 상자 내에서 모두 선택하고 싶습니다. 이벤트는 uniformgrid에서 온 것입니다. 핸들러에서 아래의 코드로 키보드를 사용할 때만 GotKeyboardFocus를 사용하여 모든 텍스트를 선택하도록 구현할 수있었습니다. 그러나 마우스를 누른 채 강조 표시하는 상자를 클릭하면 커서는 선택한 텍스트가 아닌 커서가 나타납니다.

foreach(TextBox Box in grid.Children) 
    { 
     if (Box.IsKeyboardFocusWithin) 
     { 
      Box.SelectAll(); 
      e.Handled = true; 
      break; 
     } 
    } 

또한 최대 글자 수를 감시 한 후 다음 상자로 이동하는 PreviewKeyUp 처리기가 있습니다. 또한 각 상자는 화면이로드 될 때 최대 글자 수로 초기화됩니다. 그래서 내가 쉽게 입력 할 수 있도록 텍스트 상자의 텍스트를 모두 선택하고 싶습니다.

GotMouseCapture를 거의 완벽하게 사용할 수 있다는 점을 제외하고는 텍스트 상자 가장자리 근처에서만 텍스트를 클릭하면 작동하지 않는다는 점을 제외하고는 거의 완벽하게 사용할 수있었습니다.

답변

0

라우트 된 이벤트 PreviewMouseUp에 연결해보십시오. 그것은 나를 위해 일했다.

+1

나는 그것을 시도하고 그것을 클릭 한 번 그 텍스트 상자에 붙어있어 믿습니다 ... 나는 아침에 신선한가요! – cb88

관련 문제