Eu tenho no meu programa C # textBox
Preciso que, quando o programa for iniciado, o foco esteja na caixa de texto
Eu tento isso no Form_Load:
MyTextBox.Focus();
mas não vai funcionar
Defina a ActiveControl
propriedade do formulário e você deve ficar bem.
this.ActiveControl = yourtextboxname;
ComboBox
. Mas também não funciona!MyTextBox.Focus();
funcionou - isso parece funcionar bem quando o programa está sendo executado.this.ActiveControl = textBox1;
Todo mundo entende o significado de "textBox1". "youttextboxname" soa como... = "MyTextBox";
verifique sua ordem de tabulação e verifique se a caixa de texto está definida como zero
fonte
Você poderia tentar:
MyTextBox.Select ();
De acordo com a documentação:
Você pode primeiro verificar se o controle pode ser selecionável, inspecionando a propriedade MyTextBox.CanSelect .
fonte
Você não pode definir o foco para um controle se ele não tiver sido processado. Form.Load () ocorre antes dos controles serem renderizados.
Vá para os eventos do formulário e clique duas vezes no evento "Mostrado". No manipulador de eventos mostrado no formulário, chame o método control.Focus ().
fonte
Se você deseja definir o foco apenas na primeira vez em que o formulário é exibido, tente manipular o evento Form.Shown e fazê-lo lá. Caso contrário, use Control.VisibleChanged .
fonte
Textbox.Focus()
"Tenta" para definir o foco no elemento da caixa de texto. No caso do elemento, a visibilidade está oculta, por exemplo,Focus()
não funcionará. Portanto, verifique se seu elemento está visível antes de chamarFocus()
.fonte
O motivo pelo qual você não pode fazê-lo funcionar é porque o
Load
evento é chamado antes que o formulário seja desenhado ou renderizado.É como dizer a uma pizzaria como fazer sua pizza e pedir que eles enviem uma foto de quanto pepperoni há na sua pizza antes de fazerem.
fonte
Resolvi meu problema com a alteração da propriedade "TabIndex" do TextBox. Defino 0 para o TextBox que quero focar no Form quando o programa é iniciado.
fonte
use o formulário mostrado evento e defina
fonte
Defina o valor da propriedade Index da guia = 0 e, em seguida, escreva na função de carregamento de formulário:
Vai funcionar.
fonte
Você pode usar
textBox1.select();
o TabIndex ou na configuração da caixa de texto.TabIndex=0
focado primeiro.fonte
Defina Tabstop como True e TabIndex para o mínimo no controle no qual você precisa se concentrar.
Por exemplo, se você tiver 2 TextBoxes: TextBox1 e TextBox2, defina Tabstop como True para ambos e TabIndex como 0 e 1 respectivamente. Quando o formulário for carregado, o foco estará no TextBox1 e, ao pressionar a tecla 'Tab', o foco será movido para o TextBox2.
fonte
no seu formulário, vá para propriedades e verifique se a propriedade "TopMost" está definida como verdadeira, para resolver o seu problema.
fonte
funcionou para mim defina tabindex como 0 this.yourtextbox.TabIndex = 0;
fonte
Finalmente, encontrei o problema que estava usando o metro framework e todas as suas soluções não funcionarão com o metroTextBox, e todas as suas soluções funcionarão com o textBox normal em load, show, visible_change, events, até mesmo o tab tab = 0 é válido.
fonte
Em jquery definir foco
ou em Javascript você pode fazer
fonte
c#
ewinforms
.