返回控件的名称
本文关键字:控件 返回 | 更新日期: 2023-09-27 17:58:37
我的WPF/C#应用程序中有一个简单的XAML表单,包含几个文本框。当按下TAB或ENTER键时,我需要知道控件的名称,但我不知道如何做到这一点。
我有一个监听输入/制表键的功能,但在那之后,我被难住了:
public viewSearch()
{
InitializeComponent();
PreviewKeyDown += new KeyEventHandler(HandleEsc);
}
private void HandleEsc(object sender, KeyEventArgs e)
{
if (e.Key == Key.Escape) Close();
if (e.Key == Key.Enter) SearchAndDisplay();
if (e.Key == Key.Tab) SearchAndDisplay();
}
private void SearchAndDisplay()
{
MessageBox.Show("THE NAME OF THE CONTROL");
}
谢谢。
如果您正在寻找触发事件的控件,您可以尝试以下操作:(伪代码,因为我目前无法访问Visual Studio,也无法直接检查这是否对WPF都有效):
private void HandleEsc(object sender, KeyEventArgs e)
{
if (e.Key == Key.Escape) Close();
if (e.Key == Key.Enter ||
e.Key == Key.Tab) SearchAndDisplay(e.OriginalSource)
}
private void SearchAndDisplay(object sender)
{
if(sender is Control)
{
MessageBox.Show(((Control)sender).Name);
}
}