深入探讨WPFAttached

我们在以前的文章中曾经介绍了一些有关WPF事件的相关知识,相信大家已经对这一知识有一些掌握,在这里我们将会继续针对WPF Attached做一个简单的介绍。#t#

10年积累的网站设计、成都做网站经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计后付款的网站建设流程,更有璧山免费网站建设让你可以放心的选择与我们合作。

WPF Attached与Attached属性类似,WPF的Element在事件没有定义的情况下也支持Tunneling或者Bubbling事件。比如,我们可以在一个简单的窗口程序中这样指定事件函数:

  1. < Window
  2. xmlns=”http://schemas
    .microsoft.com/winfx/2006/xaml/
    presentation”
  3. xmlns:x=”http://schemas.microsoft
    .com/winfx/2006/xaml”
  4. x:Class=”Window1”
  5. Button.Click=”Button_Click” 
  6. < Button Text="TestButton"
  7. Width="50" Height="30">
  8. < /Window>

 WPF Attached例子中,因为Window本身没有定义Click事件,所以我们必须指定Click事件属性的名称前缀,也就是定义事件的类名。经过这样的定义后,点击在Window中的TestButton,也会激发属性声明的Click事件,调用对应的Button_Click方法。

为什么这样的定义可以通过呢?首先编译时,XAML会看到Button类确实定义了一个Click的.NET事件。在运行时,会直接调用AddHandler把这两个事件依附到Window对应的类当中。所以上面用XAML属性声明的事件代码与下面的程序代码等效:

  1. public Window1 { 
  2. InitializeComponent(); 
  3. this.AddHandler(Button.
    ClickEvent, new Routed
    EventHandler(Button_Click)); 
  4. }

以上就是对WPF Attached的相关介绍。

本文标题:深入探讨WPFAttached
转载注明:http://www.gawzjz.com/qtweb2/news46/12246.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联