2011-10-25 2 views
0

TextBox을 포함하는 사용자 지정 UserControl이 있습니다. UserControl이 표시되면 어떻게 텍스트 상자에 포커스를 둡니까? UserControl.IsVisibleChangedTextBox.IsVisibleChanged 이벤트에 TextBox.Focus 전화를 시도했지만 도움이되지 않았습니다. 그 밖의 무엇을 시도 할 수 있습니까?컨트롤이 표시된 경우 텍스트 상자에 포커스를 부여합니다.

무언가에 초점이 맞지 않는 것 같습니다. TextBox. 제가 언급 한 접근 방식이 정상적으로 작동합니다. TextBox에 초점이 맞지 않는 원인을 찾는 방법은 무엇입니까? TextBox.LostFocus 이벤트를 청취하려고 시도했지만 매개 변수에 많은 정보가 포함되어 있지 않으며 스택 추적에 이전 방법이 표시되지 않습니다.

이 코드는

: 내가 전에 말했듯 내가 테스트 프로젝트에서 비슷한 시나리오에 동일한 코드를 사용하지만 내 응용 프로그램에서 작동하지 않는 경우, 작동

void TextBox1_IsVisibleChanged(object sender, DependencyPropertyChangedEventArgs e) 
     { 
      if (this.TextBox1.IsVisible) 
       this.TextBox1.Focus(); 
     } 

는 (응용 프로그램입니다 큰 그리고 나는 기본적으로 그것에서 버그를 고치고있다. 그리고 이것은 그들 사이에있다). 그래서 저는 문제가 포커스가 부적절하게 설정되지 않았다고 생각합니다. (제가이 질문을 시작할 때 생각한 것처럼) 문제는 포커스가 다시 설정된다는 것입니다. 나는 그것이 무엇인지 여기에서 찾으려고 노력하고있다 : Find out why textbox has lost focus.

+0

텍스트 상자의 가시성 변경 이벤트에 후크하려고하면 UIElement.Focus()가 작동합니다. 당신의 sceanrio를 undertand 도움이 될 수있는 몇 가지 코드를 공유 할 수 있습니까? –

+0

내 질문을 업데이트했습니다. –

+0

이 질문에 내 문제가 수정되었습니다. http://stackoverflow.com/questions/7892081/find-out-why-textbox-has-lost-focus. –

답변

-1

UC가 표시된 상태에서 브리지로 UC를 사용한 다음 일부 기능을 호출하여 TextBox을 집중시킵니다.

+0

나는 이미 그걸 시도해 보았고, 그것에 대해 내 질문에 썼다. –

0

내가 왜 시야가 바뀌 었는지 모르겠지만 ... TextBox1.Focus()IsEnabledChanged에 넣었을 때 매력처럼 작동했습니다.

관련 문제