«Блокировка» фокуса в элементе управления Frame - PullRequest
0 голосов
/ 28 мая 2018

Я пытаюсь заставить мое приложение UWP хорошо играть с контроллерами xbox и сталкиваюсь со следующей проблемой:

Как система для модальных окон, у меня есть элемент управления Frame впередний план моей MainPage и маска за фреймом, который действует как слой отклонения (нажатие на него закрывает фрейм).Стек пользовательского интерфейса выглядит следующим образом:

<Page>
    <Grid>
        <Grid x:Name="content"></Grid>
        <Rectangle x:Name="LightDismiss" Visibility="Collapsed"/>
        <Frame x:Name="SubFrame" Visibility="Collapsed" MaxWidth="500" MaxHeight="500" VerticalAlignment="Center" HorizontalAlignment="Center"/>
    </Grid>
</Page>

У меня есть SubFrameNavigator(), который будет перемещать субкадр на указанную страницу и анимировать слой LightDismiss.

Проблема в том, что XYполностью и логично перемещается по геймпаду, игнорируя слой отклонения, что позволяет перемещать фокус из кадра в элементы управления в сетке позади него.Как я могу "заблокировать" фокус внутри кадра, чтобы невозможно было переместить фокус за его пределы?

Я пытался установить XYFocusKeyboardNavigationMode в Disabled на сетке, содержащейсодержимое приложения, но оно, похоже, ничего не меняет.Я также попытался поиграться с FocusEngagement связанными свойствами, но также не добился успеха.

...