Bud*_*sey 10 c# silverlight silverlight-2.0
我正在开发一个silverlight应用程序,您需要将信息输入文本框,然后按Enter键.好吧,没有onclick事件,我可以找到,所以我做的是使用onkeypressup事件并检查是否是按下的回车键,如果这样做"blah".
感觉就像有更好的方法来做到这一点.所以问题是,有吗?
小智 12
我认为这是捕获Key.Enter的方法.
此外,如果您使用KeyDown事件而不是KeyUp事件,您的代码将更具可读性.
如果您只关心捕获单个控件的Key.Enter,那么您的方法是正确的.
您还可以使用其容器的KeyDown事件("Event Bubbling")捕获一组相关控件的Key.Enter.
小智 5
如果您使用想要绑定Command属性而不是使用Click事件,这将起作用.首先为Click创建一个事件处理程序(见下文),然后在KeyUp中执行:
private void MyTextBox_KeyUp(object sender, KeyEventArgs e)
{
if (e.Key == Key.Enter) SomeButton_Click(this, null);
}
private void SomeButton_Click(object sender, RoutedEventArgs e)
{
ICommand cmd = SomeButton.Command;
if (cmd.CanExecute(null))
{
cmd.Execute(null);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16766 次 |
| 最近记录: |