답변:
ActiveControl
양식 의 속성을 설정하면 괜찮을 것입니다.
this.ActiveControl = yourtextboxname;
MyTextBox.Focus();
작동 하지 않았습니까? 프로그램이 실행되면 정상적으로 작동하는 것 같습니다.
this.ActiveControl = textBox1;
모두 쓰기 "textBox1"의 의미를 이해합니다. "youttextboxname"같은 소리... = "MyTextBox";
시도해 볼 수 있습니다 :
설명서에 따르면 :
컨트롤의 선택 가능한 스타일 비트가 ControlStyles에서 true로 설정되고 다른 컨트롤에 포함되어 있고 모든 부모 컨트롤이 표시되고 활성화 된 경우 Select 메서드는 컨트롤을 활성화합니다.
MyTextBox.CanSelect 속성 을 검사하여 컨트롤을 선택할 수 있는지 먼저 확인할 수 있습니다 .
양식을 처음 표시 할 때만 초점을 설정하려면 Form.Shown 이벤트를 처리 하고 수행하십시오. 그렇지 않으면 Control.VisibleChanged를 사용하십시오 .
당신이 그것을 작동시킬 수없는 이유 Load
는 폼이 그려 지거나 렌더링되기 전에 이벤트가 호출되기 때문 입니다.
피자 가게에 피자 만드는 법을 알려주고 피자를 만들기 전에 페퍼로니가 얼마나 있는지 사진을 보내달라고 요청하는 것과 같습니다.
using System;
using System.Windows.Forms;
namespace Testing
{
public partial class TestForm : Form
{
public TestForm()
{
InitializeComponent();
Load += TestForm_Load;
VisibleChanged += TestForm_VisibleChanged;
Shown += TestForm_Shown;
Show();
}
private void TestForm_Load(object sender, EventArgs e)
{
MessageBox.Show("This event is called before the form is rendered.");
}
private void TestForm_VisibleChanged(object sender, EventArgs e)
{
MessageBox.Show("This event is called before the form is rendered.");
}
private void TestForm_Shown(object sender, EventArgs e)
{
MessageBox.Show("This event is called after the form is rendered.");
txtFirstName.Focus();
}
}
}
탭 인덱스 속성 값을 0으로 설정 한 다음로드 함수 쓰기 양식으로 설정하십시오.
YourTextboxName.Focus();
작동합니다.
Tabstop을 True로 설정하고 TabIndex를 포커스가 필요한 컨트롤의 최소값으로 설정하십시오.
예를 들어 TextBox1과 TextBox2가 2 개인 경우 Tabstop과 TabIndex를 각각 Tabstop으로 0과 1로 설정합니다. 폼이로드되면 포커스가 TextBox1에 있고 'Tab'키를 누르면 포커스가 TextBox2로 이동합니다.
tabindex를 0으로 설정했습니다. this.yourtextbox.TabIndex = 0;
마지막으로 메트로 프레임 워크를 사용하는 문제를 발견했으며 모든 솔루션이 metroTextBox와 함께 작동하지 않으며 모든 솔루션이 load, show, visible_change, events의 일반 textBox와 함께 작동하며 탭 인덱스 = 0도 유효합니다.
// private void Form1_VisibleChanged(object sender, EventArgs e)
// private void Form1__Shown(object sender, EventArgs e)
private void Form1_Load(object sender, EventArgs e)
{
textBox1.Select();
this.ActiveControl=textBox1;
textBox1.Focus();
}
jquery에서 포커스 설정
$(function() {
$("#txtBox1").focus();
});
또는 자바 스크립트로 할 수 있습니다
window.onload = function() {
document.getElementById("txtBox1").focus();
};
c#
및 winforms
입니다.
ComboBox
. 그러나 그것은 작동하지 않습니다!