2017-11-28 1 views
0

Ich fange an, im Xbox UWP Creator Program meine Füße nass zu machen. Ich komme aus Windows Phone 7 & 8.uwp xbox creator program - button focus, wie in code-behind einzustellen?

Ich konnte nicht herausfinden, wie der Button Focus über Code hinter oder StoryBoard Animation auf meine gewünschten Tasten eingestellt werden.

Ich habe eine einzelne Seite App, die 13 Tasten insgesamt verwendet, aber nicht alle Tasten sind auf dem Bildschirm zur gleichen Zeit. Die Schaltflächen werden mit Storyboards paarweise (Ja - Nein) auf den Bildschirm animiert.

Die erste Schaltfläche hat den richtigen Fokus, wenn sie angezeigt wird.

Die nächsten beiden Schaltflächen werden angezeigt, nachdem die erste Schaltfläche gedrückt und mit Visibility.Collapsed deaktiviert wurde. Die Schaltfläche Ganz rechts wird mit Fokus angezeigt, wenn diese Schaltflächen mit Visibility.Visible festgelegt sind. Ich brauche den linken Knopf, um den Fokus zu haben.

Das zweite Paar der Ja-Nein-Schaltflächen wird angezeigt, wenn das erste Paar mit Visibility.Collapsed ausgeblendet wird. Wenn diese beiden Schaltflächen angezeigt werden, ist das Fokusrechteck nicht sichtbar. Es erscheint, wenn der linke Stick oder das D-Pad bewegt wird. Ich brauche die linke Taste, um den Fokus zu haben.

Alle verbleibenden Paare werden wie oben ohne Fokuseinstellung angezeigt.

Ich habe docs hier lesen:

FocusManager Class

Focus navigation...

Designing for Xbox and TV

Aber ehrlich gesagt, ich bin ein wenig ratlos, wie der Fokus auf UI setzen oder zurücksetzen Elemente, die entweder in CodeBehind oder in einem StoryBoard verwendet werden.

Ich brauche die separaten Tastenpaare im Gegensatz zu nur zwei Tasten (1 Ja, 1 Nein und mit einer Case-Anweisung) aus optischen Gründen. Wenn Sie diese Schaltflächen ein- und ausschalten, kommt es zu Problemen mit dem integrierten Fokus-Manager für den visuellen Status.

Alle Stöße in die richtige Richtung wären sehr zu begrüßen.

Danke, -David

Antwort

0

Eg, den Fokus auf die Schaltfläche MyButton von Code-Behind genannt:

:

MyButton.Focus(FocusState.Programmatic); 

Sie auch die folgenden Eigenschaften von UI-Elementen nützlich finden

  • TabIndex, um die Reihenfolge zu ändern, in der Elemente Fokus erhalten.
  • AllowFocusOnInteraction um zu verhindern, dass ein UI-Element den Fokus erhält, wenn es interagiert.
+0

Danke für die Erläuterung des richtigen Befehls. Ich habe ein Zeitproblem zwischen der Ausführung des Storyboards und den Code-Behind-Aufrufen. Ich fügte einen Anruf hinzu, um Task.Delay (3000) zu erwarten; was ungefähr der Länge des Storyboards entspricht und dann den Fokus sis vertauscht. – drswoboda