2016-03-31 13 views
0

ist ein kleines Problem, aber ich bin nicht in der Lage, es zu löschen.Tab-Reihenfolge wird aktualisiert

Ich habe ein Formular in Visual Studio 2013 erstellt, es ist ein Dateneingabeformular. mit vielen Textfeldern .. wenn Benutzer in jedem Textfeld eingeben und durch die Tab-Taste seinen Sprung von einem Textfeld zu Antoher ... aber wenn Benutzer zu einem anderen Bildschirm geht und kommt zurück zum Formular der Cursor Punkt wird wieder das erste Textfeld (Nein, die letzte Textbox, in der der Benutzer seinen Cursor gehalten hat) Bitte helfen Sie mir, wie ich den Cursor beim Zurückschalten zum Formular behalten kann.

+0

Dies scheint nicht das Standardverhalten zu sein. Überprüfen Sie, ob ein Code dafür verantwortlich ist. – dotNET

+0

Hallo danke für die Antwort, aber ich habe keinen Code, der dieses Problem betrifft. –

+0

Wenn Sie auf dem Bildschirm meinen Sie verlassen das Formular und neu erstellen dann ja das ist das Standardverhalten - in diesem Fall können Sie immer erinnern oder überprüfen Sie die letzte gefüllte Dateneingabe und dann 'SetFocus' – Carsten

Antwort

0

Ja. Ich habe es geschafft, Ihr Problem zu kopieren - Das hat für mich funktioniert

Setzen Sie diesen Code in Ihr Formular, dass Sie eine Notiz des letzten aktiven Steuerelements merken möchten - natürlich die Deklarationen und Handler umbenennen.

Solange das ursprüngliche Fenster nie geschlossen ist, sollte dies gut funktionieren. Das ursprüngliche Fenster sollte OK sein, um ausgeblendet zu werden, obwohl

Dim lastactivecontrol As Control 

Private Sub Form1_GotFocus(sender As Object, e As EventArgs) Handles Me.GotFocus 
    lastactivecontrol.Focus() 
End Sub 


Private Sub Form1_LostFocus(sender As Object, e As EventArgs) Handles Me.LostFocus 
    lastactivecontrol = Me.ActiveControl 
End Sub