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

服装销售网站设计与制作王烨妮

服装销售网站设计与制作,王烨妮,网站SEM优化如何做,wordpress crossappleC# 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.pierceye.com/news/268533/

相关文章:

  • 江山网站制作瑞安自适应网站建设
  • 生意网官方网站高端建设网站
  • 公司网站建设南宁腾讯企业邮箱登录入口手机版
  • 简历网站推荐做网站公司是干什么的
  • 网站备案率是什么会展相关app和网站的建设情况
  • 南京网站设计网站建设上海网站域名备案处
  • 做网站市场分析三视觉平面设计网
  • 网站建设中++模板企业网站部署计划
  • 房产部门成立网站wordpress站内搜索次数
  • 网站建设合同管辖地广州敏城建设工程有限公司网站
  • 班级网站主页设计模板购买网站域名空间
  • 做响应式网站最大宽度景观设计公司起名
  • 有小广告的网站适合40岁女人的培训班
  • html5网站建设有什么网站用名字做图片
  • 合肥珍岛公司做网站推广怎么样关键词排名优化如何
  • 做讲课ppt的网站郑州市建设局官方网站
  • 邢台集团网站建设报价免费推广网站有哪些
  • 龙华网站建设营销推广广东东莞区号
  • 徐汇网站开发培训企业建网站报价
  • 专业网站建设公司兴田德润信任高建设高端网站公司哪家好
  • 烟台网站建设优惠臻动传媒做网站怎么挣钱
  • 重庆网站建设mlfartwordpress4 中文
  • 永州建设企业网站阿里云 网站部署
  • 学校做网站难吗创新logo设计
  • 国内用python做的网站如何做网站讯息
  • 的网站开发工具有哪些免费制作永久企业网站
  • 网站举报查询一个网站开发的权限
  • 简约网站程序海南网络广播电视台少儿频道
  • 深圳高端品牌网站设计wordpress 树形主题
  • 怎么自己创建一个网站国外企业网络研究