Wenn ich beim Öffnen des Formulars den Fokus auf ein Textfeld setzen möchte, kann ich zur Entwurfszeit die Eigenschaft tabOrder auf 0 setzen und sicherstellen, dass kein anderes Formularsteuerelement eine tabOrder von 0 hat.
Wenn ich das gleiche Ergebnis zur Laufzeit mit Code erreichen möchte, wie soll ich fortfahren?
Gibt es Alternativen zur Verwendung von tabOrder?
Ich nehme an, jeder Laufzeitcode wird im Konstruktor des Formulars oder in seinem Onload-Ereignishandler sein?
BEARBEITEN
Mit anderen Worten, ich möchte in der Lage sein, direkt in das Textfeld einzugeben, sobald das Formular angezeigt wird, ohne dass manuell darauf zugegriffen werden muss, oder manuell auszuwählen.
Da Sie es beim Laden des Formulars festlegen möchten, müssen Sie zuerst .Show () das Formular anzeigen, bevor Sie die .Focus () -Methode aufrufen können. Das Formular kann im Load-Ereignis erst dann verwendet werden, wenn Sie das Formular
anzeigen %Vor%Ich denke, wonach Sie suchen:
%Vor%im Konstruktor. (Dies ist in C #. Vielleicht in VB, das wäre das gleiche, aber ohne Semikolon.)
Von Ссылка :
Focus ist eine Low-Level-Methode, die hauptsächlich für die benutzerdefinierte Steuerung gedacht ist Autoren. Stattdessen sollten Anwendungsprogrammierer die Methode Auswählen verwenden oder die ActiveControl-Eigenschaft für untergeordnete Steuerelemente oder das Aktivieren Methode für Formulare.
Um den Fokus einzustellen,
%Vor%Setzen Sie den TabIndex mit
%Vor%