如果我在一个.net winform上有一个链接标签,我是否可以,当链接标签聚焦时,按下enter键,使所述的LinkLabel点击?
不幸的是,它似乎没有公开一个KeyDown事件。
编辑
最简单的解决方案是使用PreviewKeyDown,如果有人碰巧在谷歌这里。
发布于 2011-03-03 22:41:31
您可以创建自己的链接标签类,它扩展LinkLabel并重写OnKeyUp或OnKeyDown事件以捕获ENTER keypress。
这将节省您为添加到窗体的每个链接标签复制代码。
例如:
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);
}
}
}发布于 2011-03-03 22:40:42
对放置在LinkLabel单击事件后面的逻辑使用一个函数。然后可以使用keyDown事件调用相同的函数。
https://stackoverflow.com/questions/5187476
复制相似问题