【问题标题】:Template10 FocusAction to move focus after Enter key?Template10 FocusAction 在 Enter 键后移动焦点?
【发布时间】:2016-03-24 06:38:11
【问题描述】:

是否可以使用 FocusAction 将焦点从 KeyBehavior 移动到另一个控件?如果是这样,一个例子会很有帮助。 TIA

【问题讨论】:

  • 我希望我已经想到了这个想法。谢谢。

标签: winrt-xaml win-universal-app template10


【解决方案1】:

令人着迷。

这是行不通的:

<TextBox x:Name="T1">
    <Interactivity:Interaction.Behaviors>
        <b:KeyBehavior Key="Enter">
            <b:FocusAction TargetObject="{Binding ElementName=T2}" />
        </b:KeyBehavior>
    </Interactivity:Interaction.Behaviors>
</TextBox>
<TextBox x:Name="T2" />

但我喜欢这个想法,我会尽快将其添加到行为中。

与此同时,如果没有您创建的自定义内容,就没有声明性方法可以做到这一点。顺便说一句,我试过这个(也不起作用):

<TextBox x:Name="T1">
    <Interactivity:Interaction.Behaviors>
        <b:KeyBehavior Key="Enter">
            <Core:CallMethodAction MethodName="Focus" TargetObject="{Binding ElementName=T2}" />
        </b:KeyBehavior>
    </Interactivity:Interaction.Behaviors>
</TextBox>
<TextBox x:Name="T2" />

不起作用,因为 Focus 有参数并且行为不支持传递参数。虽然我希望它会。

不过是个好主意。有点像强迫TAB,对吧?很酷。

杰瑞

【讨论】:

  • 谢谢@Jerry。很高兴你喜欢这个主意。将有助于在缺少 Tab 键的移动设备中输入表单。我注意到 devinfluencer 有一个类似这样的请求。与此同时,我打算试试这个。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-07-10
  • 2017-05-08
  • 2012-05-11
  • 1970-01-01
  • 1970-01-01
  • 2021-06-15
  • 2019-11-04
相关资源
最近更新 更多