当前位置: 首页 > news >正文

网站开发的岗位及职责淄博公司做网站

网站开发的岗位及职责,淄博公司做网站,南通物流网站建设,网站数据库管理系统C# WPF编程-路由事件 路由事件概要路由事件的三种方式 WPF事件WPF最重要的5类事件#xff1a;生命周期事件 鼠标事件键盘事件多点触控输入原始触控 路由事件概要 路由事件是具有更强传播能力的事件#xff0c;它们可在元素树中向上冒泡和向下隧道传播#xff0c;并沿着传播… C# WPF编程-路由事件 路由事件概要路由事件的三种方式 WPF事件WPF最重要的5类事件生命周期事件 鼠标事件键盘事件多点触控输入原始触控 路由事件概要 路由事件是具有更强传播能力的事件它们可在元素树中向上冒泡和向下隧道传播并沿着传播路径被事件处理程序处理。 路由事件的三种方式 与普通.NET事件类似的直接路由事件(direct event)。在包含层次中向上传递的冒泡路由事件(bubbling event)。在包含层次中向下传递的隧道路由事件(tunneling event)。 定义、注册和封装路由事件 以Button的Click事件为例 public abstract class ButtonBase: ContentControl,... {// 定义事件public static readonly RouteEvent ClickEvent;// 注册事件static ButtonBase(){ButtonBase.ClickEvent EventManager.RegisterRouteEvent(Click, RoutingStrategy.Bullle, typeof(RoutedEventHandler), typeof(ButtonBase));...}// 封装事件public event RoutedEventHandler Click{add{base.AddHandler(ButtonBase.ClickEvent, value);}remove{base.RemoveHandler(ButtonBase.ClickEvent, value);}} ... }共享路由事件 可在类之间共享路由事件的定义。 如UIElement.MouseUpEvent Mouse.MouseUpEvent.AddOwner(typeof(UIElement)); 引发路由事件 与所有事件类似定义类需要在一定情况下引发事件。使用RaiseEvent()方法引发事件。 如RouteEventArgs e new RouteEventArgs(ButtonBase.ClickEvent, this); base.RaiseEvent(e); 处理路由事件 XAML标签中定义: Image Source“1.png” Name“img” MouseUp“img_MouseUp” / C# 代码中 private void img_MouseUp(object sender, MouseButtonEventArgs e) { } 添加事件 代码中和XAML标记中同样效果 img.MouseUp new MouseButtonEventHandler(img_MouseUp); 更精简的语法隐式地创建合适的委托对象 img.MouseUp img_MouseUp; 自行调用UIElement.AddHandler()方法直接连接事件 img.AddHandler(Image.MouseUpEvent, new MouseButtonEventHandler(img_MouseUp)); 移除事件 使用-运算符 img.MouseUp - img_MouseUp;使用UIElement.RemoveHandler()方法 img.RemoveHandler(Image.MouseUpEvent, new MouseButtonEventHandler(img_MouseUp)); RouteEventArgs类 附件事件 所有按键的单击事件都会触发调用DoSomething事件处理函数 隧道事件 隧道路由事件易于识别它们都以Preview开头。WPF通常成对地定义冒泡路由事件和隧道路由事件。如冒泡事件MouseUp和隧道事件PrevieMouseUp。 WPF事件 WPF最重要的5类事件 **生命周期事件**在元素被初始化、加载或卸载时发生这些事件。**鼠标事件**操作鼠标时发生的事件。**键盘事件**操作键盘时发生的事件。**手写笔事件**操作手写笔时发生的事件。多点触控事件 操作触摸屏时发生的事件。 生命周期事件 鼠标事件 获取鼠标Move事件的鼠标坐标信息 private void Window_MouseMove(object sender, MouseEventArgs e){Point pt e.GetPosition(this);Console.WriteLine($Window_MouseMove {pt.X}, {pt.Y});}private void Window_MouseUp(object sender, MouseButtonEventArgs e){Console.WriteLine(Window_MouseUp);}private void Window_MouseDown(object sender, MouseButtonEventArgs e){Console.WriteLine(Window_MouseDown);}private void Window_MouseEnter(object sender, MouseEventArgs e){Console.WriteLine(Window_MouseEnter);}private void Window_MouseLeave(object sender, MouseEventArgs e){Console.WriteLine(Window_MouseLeave);}private void Window_MouseDoubleClick(object sender, MouseButtonEventArgs e){Console.WriteLine(Window_MouseDoubleClick);}private void Window_MouseMove(object sender, MouseEventArgs e){Point pt e.GetPosition(this);Console.WriteLine($Window_MouseMove {pt.X}, {pt.Y});}鼠标捕获 鼠标拖放 键盘事件 Grid Button.ClickGrid_Click KeyDownGrid_KeyDownStackPanelButton Namebtn1 Width20 Height30 Margin10 Clickbtn1_ClickOK/ButtonTextBox TextInputTextBox_TextInput/TextBox/StackPanel /Gridprivate void Grid_KeyDown(object sender, KeyEventArgs e){Console.WriteLine(${e.Key.ToString()});}private void TextBox_TextInput(object sender, TextCompositionEventArgs e){Console.WriteLine(${e.Text});}KeyboardDevice属性提供的方法 多点触控输入 原始触控
http://www.hkea.cn/news/14487122/

相关文章:

  • 做网站容易挣钱吗wordpress wpmu
  • 点网站建设seo网站优化及网站推广
  • 网站总是跳转建设网站案例分析
  • 旅游网站建设实施方案网站建设导航栏
  • 手机网站 免费重庆专门做网站的公司
  • 企业型网站建设咨询电话如皋建设网站
  • 北京网站设计建设住房和城乡建设部门户网站
  • 做网站需要学会些什么百度业务推广
  • 59网站一起做网店广州wordpress 回收站在哪里
  • 网站开发以图片为背景制作网站的专业公司吗
  • 昆明专门做网站做网站需要自己研发吗
  • 郑州网站排名优化公司如何通过域名访问网站
  • 建设网站的总结wordpress 网页宽度
  • 鞍山网站设计制作Discuz网站制作教程
  • 广州建论坛网站换友链的网站
  • 备案号放网站下面居中怎么做免费网站 视频
  • 中煤建设集团网站phpcms 网站打不开
  • wordpress写网站教程做虚拟货币交易网站
  • 企业网站主页素描模板常州市住房建设局网站
  • 如何撰写一个网站规划建设方案外贸是什么
  • 购物网站静态页面模板哪家网站开发培训好
  • 怎么做像天猫类似的网站浙江省工程建设协会网站
  • 做外贸自己建网站铜陵做网站的
  • 青浦php网站开发培训wordpress 文本 点不了
  • 万家灯火营销型网站达州市住房与城乡建设厅网站
  • 丰都网站建设哪家好一学一做教育视频网站有哪些内容
  • 服装网站建设目的石家庄青园网站建设
  • 门户网站功能清单论坛搭建教程
  • 黄岛开发区网站制作开放平台产品经理
  • 职工素质建设 网站网站添加 百度商桥