2016-04-05 7 views
1

Ich habe den folgenden Code, um ein benutzerdefiniertes Steuerelement auszuwählen. Das aktive Steuerelement sollte jedoch nicht auf 'uPnlEntryOptions' gesetzt werden. Ich habe versucht, control.select zu verwenden, dasselbe Ergebnis. Ich habe auch versucht Active = uPnlEntryOptionsFehler beim Auswählen oder Festlegen des Fokus auf ein benutzerdefiniertes Steuerelement

-Code

uPnlEntryOptions.Visible = True  
uPnlEntryOptions.Refresh() 
uPnlEntryOptions.Select() 
uPnlEntryOptions.Focus() 
Debug.Print(CStr(uPnlEntryOptions.Focused)) 
Debug.Print(CStr(uPnlEntryOptions.CanFocus)) 

Ausgabe

Falsch

Wahre

+0

Mit ActiveControl = uPnlEntryOptions wird der Name des aktiven Steuerelements auch als anderes Element ausgegeben. – Simeon

+0

Was ist der Typ von uPnlEntryOptions - wenn benutzerdefiniert, wovon erbt? Enthält es Untersteuerelemente? Ich nehme an, es hat Enabled = true? –

+0

Ja aktiviert ist wahr. Es enthält nur Schaltflächen. Sorry, nicht sicher, was du meinst mit was ist es inhärent von? – Simeon

Antwort

2

Die Focused Eigenschaft gilt nur, wenn die Steuerung über die Fokus, kein Sub-c Kontrolle.

Aufruf Wählen Sie (oder Focus?) Auf einem Benutzersteuerelement wird das erste untergeordnete Steuerelement auswählen. Anschließend der UserControl.ContainsFocus = True, da der Fokus INNERHALB des UserControl ist, aber UserControl.Focused = False, da das UserControl selbst nicht das fokussierte Steuerelement ist.

Verwandte Themen