如果我在.net winform上有一个linklabel,无论如何我都可以,当链接标签聚焦时,按下enter
键导致LinkLabel
{{ 1}}点击?
不幸的是,它似乎没有公开KeyDown
事件。
修改
最简单的解决方案是使用PreviewKeyDown
,如果Google在这里遇到任何问题。
答案 0 :(得分:2)
您可以创建自己的链接标签类,该类扩展LinkLabel并覆盖OnKeyUp或OnKeyDown事件以捕获ENTER按键。
这样可以节省您为表单添加的每个链接标签的代码。
e.g。
public class LinkLabelEx : LinkLabel
{
protected override void OnKeyUp(KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
e.SuppressKeyPress = true;
e.Handled = true;
OnLinkClicked(new LinkLabelLinkClickedEventArgs(new Link(0, this.Text.Length)));
}
else
{
base.OnKeyUp(e);
}
}
}
答案 1 :(得分:0)
为LinkLabel
点击事件后面的逻辑使用函数。然后,您可以使用keyDown事件来调用相同的函数。