zoukankan      html  css  js  c++  java
  • 属性、事件分析

    属性:普通属性,CLR属性,依赖属性;

             普通属性:即.net2.0时代的常规属性

             CLR属性:它是用于向外界暴漏 依赖属性 的外包装

             依赖属性:字段属性

             普通属性与CLR属性在“上层”使用上几乎没有区别,只是在属性的定义细节上存在区别,CLR属性是针对依赖属性的外包装,其访问器 封装了 GetValue和SetValue方法;而普通属性仅仅封装了“对应的私有字段”            

    事件:直接事件,CLR事件,路由事件

           直接事件:即.net2.0时代的常规事件

           CLR事件:它是用于向外界暴漏 路由事件 的外包装

           路由事件:字段事件

           直接事件与CLR事件在“上层”使用上几乎没有区别,只是在事件的定义细节上存在区别,CLR事件是针对路由事件的外包装,其  “声明”  的代码体 封装了 AddHandler和RemoveHandler方法;而直接事件仅仅是使用  “Event和委托”    "声明"   一个事件而已。 

          路由事件的激发/触发:路由事件 “激发时” 携带的消息    放在    路由事件参数(RoutedEventArgs)里,并将该参数实例与“路由事件”相关联,然后调用元素的RaiseEvent方法(继承自UIElement)并传入“路由事件参数实例” 把事件发送出去;可见,这个过程与CLR事件(或直接事件)完全不同。

  • 相关阅读:
    <转>c#调用C++DLL类型转换
    <转>CB2010使用一段时间总结。(Ansi>Unicode)
    Sql的自定义聚合函数,挺费劲。
    关于 MSDN 说 Lock 应该用private 对象锁定的测试。
    热门JQuery插件
    偶然发现 RouteDebuge 的作者是一个超牛的家伙。
    jquery.query 插件的设计问题。
    JQuery UI 调整笔记
    JQuery tr:visible IE8 失效.
    CS0016 一个解决方案:
  • 原文地址:https://www.cnblogs.com/changbaishan/p/4201704.html
Copyright © 2011-2022 走看看