我正在 Lightswitch 中做一个项目,我正在尝试处理特定屏幕上的 keyup 事件
我找不到它,我在哪里可以找到那些事件(例如我们的 KeyUp KeyDown LostFocus ext.)
如果不支持它们,我应该怎么做才能处理这种情况?
最佳答案
我猜你指的是控件而不是实际的屏幕。因此,例如,要处理文本框上的键盘事件,实现它的一种方法就像在这个例子中,我有一个“Address1”文本框,我想在用户键入某个字母时更改它的文本:
1 - 在屏幕的 Activated 事件上,您可以找到所需的文本框:
partial void CustomersListDetail_Activated()
{
this.FindControl("Address1").ControlAvailable += AddressTextBoxAvailable;
}
2 - 在 Available 事件处理程序上,您可以连接所需的事件(您可以有 KeyUp、KeyDown、LostFocus 等):
private void AddressTextBoxAvailable(object sender, ControlAvailableEventArgs e)
{
((System.Windows.Controls.TextBox) e.Control).KeyUp += AddressTextBoxKeyUp;
}
3 - 在 KeyUp 事件处理程序上,您可以进行操作:
private void AddressTextBoxKeyUp(object sender, KeyEventArgs e)
{
if (e.Key == Key.A)
{
((System.Windows.Controls.TextBox) sender).Text = "You typed A";
}
}
关于events - 我在哪里可以找到 LightSwitch 中的关键事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9619686/