2010-02-07 3 views
3

Tab을 선택한 후에 textBox에 포커스를 지정하고 싶지만 아무리 시도해도 문제가 없습니다. 나는 비슷한 질문을 여기에서 보았으나 필요한 결과를 얻지 못한다. 여기 Ive가 시도한 것이 있습니다.Tab을 선택한 후에 어떻게 textBox에 포커스를 둘 수 있습니까?

private void tabBDERip_Click(object sender, EventArgs e) 
    { 
     textBoxPassword.Focus(); 
    } 

private void tabAll_SelectedIndexChanged(object sender, EventArgs e) 
    { 
     if (tabAll.SelectedTab == tabBDERip) 
     { 
      textBoxPassword.Focus(); 
     } 
    } 

누군가가 내가 잘못는지 말해 주시겠습니까?

감사

+0

정확히 어떻게됩니까?탭 관련 이벤트가 전혀 실행되지 않습니까? winforms? wpf? – shahkalpesh

답변

6

우선 사용자가 있으므로 SelectedIndexChanged 이벤트가 사용하려는 하나입니다 TabPage하지 헤더에 내에서 클릭 할 TabPage 제어 화재의 Click 이벤트입니다.

난 그냥 당신에게 매우 비슷한 코드를 테스트 :

private void tabControl1_SelectedIndexChanged(object sender, EventArgs e) 
{ 
    if (tabControl1.SelectedTab == tabPage2) 
    { 
     textBox4.Focus(); 
    } 
} 

그리고 그것은 괜찮 았는데.

암호 입력란이 활성화되어 있지 않습니까?

다른 컨트롤에 Focus()를 호출하려고하면도 작동하지 않는 것이 무엇입니까?

당신은 적중을 얻을 않는 SelectedIndexChanged 코드 내부에 중단 점을 설정 한 경우?

업데이트 : 흥미 롭. 중단 점이 (if 이전에) 충돌하지 않으면 이벤트 처리기가 제대로 연결되어 있는지 확인합니다. 같은 대한 designer.cs에서 봐 :

this.tabControl1.SelectedIndexChanged += new System.EventHandler(this.tabControl1_SelectedIndexChanged); 

업데이트 :을 나는 어쩌면 문제가 어디에 있는지 알아내는 데 도움이됩니다 그것을보고 http://www.ccswe.com/temp/SO_TextBoxFocus.zip에서 내 작업 예를 넣습니다.

업데이트 : 양식의 컨트롤에 이벤트 핸들러를 첨부 할 수있는 쉬운 방법 :

1 :에 이벤트 핸들러를 첨부 한 다음 Events 아이콘 (번개 모양)을 클릭하려는 Control를 선택 Properties 창에서

alt text http://www.ccswe.com/temp/Attach_EventHandler_1.png

2 : 오른쪽으로 두 번 클릭하고 첨부 할 이벤트를 찾습니다.

alt text http://www.ccswe.com/temp/Attach_EventHandler_2.png

3 : 코드 스텁이 자동으로 생성되며, 이벤트가 디자이너에 첨부됩니다.

alt text http://www.ccswe.com/temp/Attach_EventHandler_3.png

속성 창을 보면 다시 이제 생성 된 메소드의 이름을 볼 수 있습니다.

+0

답장을 보내 주셔서 감사합니다. 결국 그것은 타격을 입지 않습니다. 나는 단 하나의 textBox와 2 개의 탭으로 된 tabControl로 앱을 만들었습니다. 여전히 타격을 입지 않습니다. – JimDel

+0

아! 그게 코리 야. 귀하의 업데이트를 추가하고 잘 작동합니다. 나는 이것에 아직도 새로운이고 거기있을 필요가 있었다는 것을 몰랐다. 그러나 이제 나는 그것이 그것을 이해한다는 것을 알게되었다. 다시 한번 감사드립니다. – JimDel

+0

기꺼이 도와 드리겠습니다. 디자이너를 편집하는 것이 이벤트 핸들러를 첨부하는 가장 쉬운 방법은 아닙니다. 속성 창을 통해이 작업을 수행 할 수 있습니다. 그것에 대한 자세한 정보로 내 대답을 업데이트하겠습니다. –