Sie können eine dieser Optionen verwenden, um den Fokus auf ein Steuerelement in Load
Ereignis des Formulars zu setzen:
this.ActiveControl = this.button1;
this.button1.Select();
this.Show(); this.button1.Focus();
.
Sie können die Control.Focus
Methode in dem Load-Ereignisse des Formulars nur auf einem Steuerelement den Fokus einstellen, nachdem die Visible
Eigenschaft des Formulars auf true
gesetzt.
Nach Auswahl der Schaltfläche wird der Rand der Schaltfläche so gezeichnet, dass er als aktives Steuerelement angezeigt wird, aber die Fokusmarkierungen werden nicht gezeichnet.
Als quick and dirty fix, können Sie eine Tab und eine Verschiebung + Tab zum Formular senden:
SendKeys.SendWait("{TAB}");
SendKeys.SendWait("+{TAB}");
Wenn Sie interessiert sind das Standardverhalten zu ändern von Button
zu sehen, Fokus-Cues, wenn Sie Schaltfläche im Code oder mit der Maus wählen, können Sie Ihre eigenen Schaltfläche erben Button
erstellen und überschreiben ShowFocusCues
, um Focused
Wert zurückzugeben. Sie können mehr darüber lesen here:
public class MyCustomButton : Button
{
protected override bool ShowFocusCues
{
get { return this.Focused; }
}
}
Ein Knopf hat * vier * Arten von Grenzen. Die Kombination, ob die Schaltfläche fokussiert ist und ob es sich um die Standardschaltfläche für die Benutzeroberfläche handelt. Wenn die TabIndex-Eigenschaft oder die Select() -Methode nicht den gewünschten Rahmen erhält, dann suchen Sie nach der AcceptButton-Eigenschaft des Formulars. –
In Verbindung stehend? [C# Winforms-Kontrollkästchen zeigt keinen Fokus an] (http://stackoverflow.com/a/38504895/123723) –