Silverlight容器控件 封装键盘事件的问题

蜗牛水里爬 2010-09-26 11:08:48

public class Areas : Canvas
{
public Areas()
{
this.MouseMove += new MouseEventHandler(Areas_MouseMove);
UIElement target = this as UIElement;
target.AddHandler(UIElement.KeyDownEvent, new KeyEventHandler(Areas_KeyDown), true);
this.MouseLeftButtonUp += new MouseButtonEventHandler(Areas_MouseLeftButtonUp);
this.KeyDown+=new KeyEventHandler(Areas_KeyDown);

}
void Areas_KeyDown(object sender, KeyEventArgs e)
{
if (e.Key.ToString() == "Left")
{
MessageBox.Show("按下左键!");
//BindCursorData(mydraw.DrawCursor(this.panel1, true));
}
else if (e.Key.ToString() == "Right")
{
MessageBox.Show("按下右键!");
//BindCursorData(mydraw.DrawCursor(this.panel1, false));
}
}
}

高手给指点下我的封装键盘事件为什么不管用AddHandler和 this.KeyDown+=new KeyEventHandler(Areas_KeyDown);
这两种方法都不管用。。。。。
...全文
130 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
蜗牛水里爬 2010-09-26
  • 打赏
  • 举报
回复
而且用户要点击下 BTN才能实现 键盘事件
蜗牛水里爬 2010-09-26
  • 打赏
  • 举报
回复
我在这个控件里添加一个BTN是能解决这个问题但是也太假了。。。。。。
leikaiwei 2010-09-26
  • 打赏
  • 举报
回复
遇见过 那个事件就是没用 查阅google 说是bug

我看他们都是按钮的这个事件 解决办法是自写一个Button继承Button

8,735

社区成员

发帖
与我相关
我的任务
社区描述
WPF/Silverlight相关讨论
社区管理员
  • WPF/Silverlight社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧