我在哪里可以找到LightSwitch中的关键事件?
问题描述:
我正在LightSwitch中的一个项目,我试图处理特定的屏幕上keyup事件我在哪里可以找到LightSwitch中的关键事件?
我找不到它,我在哪里可以找到这些事件(例如我们KEYUP的KeyDown引发LostFocus分机)
如果他们不支持我应该怎么做来处理这种情况?
答
我想你是指控件而不是实际的屏幕。因此,例如,为了处理文本框上的键盘事件,实现它的一种方式就像在本例中,我有一个“Address1”文本框,并且我想在用户输入某个字母时更改它的文本:
1 - 在屏幕激活时,你可以得到所需要的文本框:
partial void CustomersListDetail_Activated()
{
this.FindControl("Address1").ControlAvailable += AddressTextBoxAvailable;
}
2 - 可用的事件处理程序,您可以用所需的事件连接(你可以有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";
}
}
很Intresting :)再次感谢男人 – 3oon 2012-03-09 19:49:38
不客气! – 2012-03-10 20:50:40