1

我正在使用 Prism 5,并通过 NotificationRequest 显示模式对话框。我希望在 OK 按钮中设置焦点,因此用户只需按 Enter 即可跳过消息(现在它适用于 Tab -> Tab -> Enter)。我尝试了很多方法,但没有一种方法有效:

<i:Interaction.Triggers>
    <prism:InteractionRequestTrigger SourceObject="{Binding NotificationRequest, Mode=OneWay}">
        <prism:PopupWindowAction IsModal="True" CenterOverAssociatedObject="True" FocusManager.FocusedElement="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type Window}}, Path=DataContext.OKButton}"/>
    </prism:InteractionRequestTrigger>
</i:Interaction.Triggers>

当然对话框正在显示并且没有错误。唯一的麻烦是按钮的焦点。

我怎样才能得到这种行为?我想要的是用户按下回车键并且 PopupWindow 关闭,就像单击按钮一样。

4

1 回答 1

1

接得好!请在此处将其作为问题提交: https ://github.com/PrismLibrary/Prism/issues

我们将在下一次更新中解决此问题。

在那之前,您必须使用自定义窗口对话框。查看此示例以了解如何执行此操作。

https://github.com/PrismLibrary/Prism-Samples-Wpf/tree/master/InteractivityQuickstart

查看自定义弹出视图: https ://github.com/PrismLibrary/Prism-Samples-Wpf/blob/master/InteractivityQuickstart/InteractivityQuickstart/Views/CustomPopupView.xaml

于 2015-11-02T18:33:37.883 回答