Festlegen des anfänglichen Kontrollfokus in Silverlight

8

Ich suche nach einer Möglichkeit, den anfänglichen Fokus auf ein Silverlight UserControl automatisch auf ein bestimmtes Steuerelement zu setzen. Ich habe eine Login-Seite mit einem Benutzernamen Textfeld und ich möchte es so, dass, sobald der Benutzer auf die Seite geht ihr Cursor ist bereits positioniert und warten in den Benutzernamen Textbox, anstatt sie zu machen, klicken Sie auf das Feld.

Ich habe versucht, zu rufen. Konzentrieren Sie sich auf das Load-Ereignis von UserControl, aber ohne Erfolg. Weiß jemand, wie man das macht?

    
Nick Gotch 14.07.2009, 16:08
quelle

5 Antworten

5

Ich habe eine schnelle SL3-App ausgepackt, und es ist schwierig, den ursprünglichen Fokus auf das UserControl zu legen, ganz zu schweigen von einem Steuerelement im Silverlight-Steuerelement.

Sehen Sie jedoch nach, ob diese Lösung dieses Problem für Sie löst. Sie müssen ein wenig JavaScript verwenden.

Hier ist der Code für die Referenz:

%Vor%

Sobald Ihr SL-Steuerelement den Fokus hat, können Sie den Fokus weiter auf ein bestimmtes Steuerelement einstellen, indem Sie etwa wie folgt vorgehen:

%Vor%

wobei uxLogin in XAML als definiert ist:

%Vor%     
Scott Marlowe 14.07.2009, 16:45
quelle
16
%Vor%     
Kiril Stanoev 15.07.2009 08:32
quelle
3

Wenn Sie es in einer PRISM- oder MVVM-Weise tun wollen (entfernen Sie den Code-Behind-Code), können Sie ein Verhalten implementieren. In meinem Fall fokussiere ich die Ansicht im Feld Benutzername, wenn sie leer ist und im Passwort, wenn sie gesetzt ist (daher die 2 Parameter).

Meine Implementierung:

%Vor%     
R4cOON 20.07.2009 13:34
quelle
1

Wenn Sie diesen Code möchten:

  

window.onload = function ()

%Vor%

funktioniert in allen Browsern, Sie müssen den tabIndex für Element mit id="Xaml1" setzen.

Entschuldigung für mein Englisch:)

    
Luba 24.05.2011 09:23
quelle
0

Ich habe gerade einen Schnelltest gemacht und es sieht so aus, als würde das Problem auch im Browser gelöst!

So legen Sie den Fokus auf TextBox in Silverlight 4-Popup außerhalb des Browsers fest

    
tkerwood 11.02.2011 07:06
quelle