문제

Textbox 내에 중첩 TabControl.

때 양식 로드,내가 하려는 것에 집중하는 Textbox (기본적으로 포커스가 설정 TabControl).

단순히 부르 textbox1.focus()Load 행사의 형태로 나타나지 않습니다.

나는 할 수 있었다 초점을 수행하여 다음과 같다:

 private void frmMainLoad(object sender, EventArgs e)
 {
     foreach (TabPage tab in this.tabControl1.TabPages) 
     {
         this.tabControl1.SelectedTab = tab;
     }
 }

나의 질문은:

거기에 더 많은 우아한 방법으로 하면 이렇게 할 수 있습니까?

도움이 되었습니까?

해결책

다음과 같은 솔루션입니다:

private void frmMainLoad(object sender, EventArgs e)
{
    ActiveControl = textBox1;
}

더 나은 질문 그런데 왜...나는 전적으로 확인 질문에 대답을 하나입니다.

편집:나는 그것을 의심하는 무언가가는 사실과 모두 형식,그리고 TabControl 컨테이너지만,나는 확실하지 않다.

다른 팁

에 넣어보십시오 Form_Shown() 이벤트입니다.기 때문에 그것의 용기에 넣에 Form_Load 또는 양식()생성자 작동하지 않습니다.

을 사용하려고 textbox1.Select()textbox1.Focus().이 몇 번입니다.

당신은 단지 추가할 필요가 있습니다.Select()에 대한 제어를 이 코드입니다.내가 이것을 사용하여 설정에 초점을 컨트롤하는 동안 유효성 검사 오류가있는 경우.

private void ShowControlTab(Control ControlToShow)
    {
        if (!TabSelected)
        {
            if (ControlToShow.Parent != null)
            {
                if (ControlToShow.Parent.GetType() == typeof(TabPage))
                {
                    TabPage Tab = (TabPage)ControlToShow.Parent;
                    if (WOTabs.TabPages.Contains(Tab))
                    {
                        WOTabs.SelectedTab = Tab;
                        TabSelected = true;
                        return;
                    }
                }

                ShowControlTab(ControlToShow.Parent);
            }
        }
    }

나는 사용자를 제어에서 다른 사용자가 제어할 수 있습니다.textbox1.Select()나를 위해 일했지만 textbox1.Focus()를 작동하지 않았습니다.

할 수도 있습니다 설정 Tabstop false,textbox1.Focus(),TabStop 사실이다.

  private void ChildForm1_Load(object sender, EventArgs e)
        {
            ActiveControl = txt_fname;

        }

내가 사용하는 이 코드는 이 작품에서 승리 탭을 제어 또는 dotnetbar supertab 제어

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top