DependencyProperty.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
DependencyProperty

.Net3.0里的DependencyProperty 自己一个人学,怎?除了做,有两个,第一是去,看看能不能把,第二是写文章,看看理不理的清楚思路 呵呵 第一次,,先在~ 不,今天先 ? 一 引入DependencyProperty WPF核心中的核心了。在WPF的框架中随DependencyProperty能,很多介,我,今天先从什DependencyProperty说起。 ? 从属性 在CLR中有属性(Property)这个概念,它可以用来封装字段。 private?string?_myString; public?string?MyString { ?????????get{return?_myString;} ????????set{_myString=value;} } ?这种属性应用的非常多,我们还可以在set或get方法中加入某些Age属性的set方法中加入 但是WPF框架的编程经常和界面打交道,经常遇到的一个情况是某个属性的值的变化会影响到多个其他Button的改set方法中触 实际上我们的需求更加复杂,WPF中的数据XAML语法等很多地方都和属性密切相关,我们迫切需要一种功能更加强大的属性。 ?于是在WPF中,引入了一种特殊的属性,Dependency Property。,它的对这种属性的取值和赋值都会能与其他 这很抽象,也许很难懂。不明白不要紧,先接着看。一步步来,先看看DependencyProperty长什么样,从定义DependencyProperty开始: public?static?readonly?DependencyProperty?MyStringProperty?=?DependencyProperty.Register( ????????????MyString, ????????????typeof(string), ????????????typeof(ClassMyDependency), ????????????new?PropertyMetadata(defaultValue,?new?PropertyChangedCallback(onMyStringPropertyChange))); 一眼看上去很复杂,首先使用public static readonly的方式(其.net里的一DenpendencyProperty成DependencyProperty的Register方法,这个成员我们称做DependencyProperty标识。 我们传入了一些参数,分别表示属性名,属性类型,父元素(也就是包含属性的元素)类型,属性元数据(这些以后再详细介绍)。 要 注意的是,?MyStringProperty,但是属性的名称不是成,它由第一个参数指定.Property的后 是可,虽说不按照这个规则编译能通过,但是.net中很多地方都遵循了,这里我们了解这个规则并保证自己定义的 DependecyProperty都遵循它就行了,以后会有更. 实际上我,全局的且是唯一确定的,当需要GetValue()和SetValue()方法来()。 GetValue(property) SetValue(property, value) 方法的DependencyProperty的DependencyObject的,这个属性定义在了这里,但是它并不完全属于DependencyProperty功能的? ? 不GetValue和SetValue方法DependencyProperty的定 ????????public?string?MyString ????????{ ????????????get?{?return?(string)GetValue(myStringProperty);?} ????????????set?{?SetValue(myStringProperty,?value);?} ????????} 这在MSDN中称”CLR封装(wrapper)”,DependencyProperty就和“向下兼容”。? ??DependencyProperty到底可以用来做什private的私有字段。.net自Hash的数据存DotNet的一 ?关于为DependencyProperty的XAML和?code中都可以 code中就不介XAML中,使用一个XML属性即可: l:ClassMyDependency MyString=11111 MyString1=22222 x:Key=myclass / l是MyString是一个DependencyProperty,MyString1是一个普通属性,XAML下的 这一句XAML如果翻C# code大概是: ????????Class

文档评论(0)

me54545 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档