微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

WPF绑定开销

如何解决WPF绑定开销

| 我正在学习WPF。我现在开始绑定。使用using0ѭ时绑定是否依赖反射,价格是多少?我正在考虑使用WPF来显示通过UDP流传输的数据,但我担心与WinForms相比,开销可能会太大。     

解决方法

这是有关它的MSDN文章。我经常听到这是一个很常见的问题。 但我的想法是,除非遇到严重的极端情况,否则您要在WPF中使用绑定。这就是整个系统的设计方式。     ,绑定的性能取决于要绑定的对象的类型。不针对INotifyPropertyChanged使用反射,而是在解析CLR属性时使用反射。 Microsoft在以下方面有出色的著述:\“优化性能:数据绑定\”。 与绩效相关的关键细节:   如果源对象是CLR对象,并且源属性是CLR   属性,Windows Presentation Foundation(WPF)数据绑定   引擎必须首先在源对象上使用反射...这   反射操作的顺序可能非常耗时   从性能的角度来看。      解决对象引用的第二种方法涉及CLR   实现INotifyPropertyChanged接口的源对象,   源属性是CLR属性。在这种情况下,数据   绑定引擎直接在源类型上使用反射并获取   必需的属性。这仍然不是最佳方法,但是   与第一种方法相比,将减少工作集要求中的成本。      解决对象引用的第三种方法涉及一个源   对象是DependencyObject,而源属性是   DependencyProperty。在这种情况下,数据绑定引擎不会   需要使用反射。相反,属性引擎和数据   绑定引擎一起独立解析属性引用。   这是解析用于数据的对象引用的最佳方法   捆绑。      ...      WPF允许您将数据绑定到XML内容;但是,数据绑定到   XML内容比将数据绑定到CLR对象要慢。不转换   如果CLR对象数据仅用于数据绑定,则将其数据转换为XML。 (强调)     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。