写点什么

WPF 4.5 中的弱事件

  • 2012-02-19
  • 本文字数:493 字

    阅读完需:约 2 分钟

弱事件对于 WPF 和 Silverlight 中使用的样式数据绑定而言,一直是一门重要的内存管理技术。前者 WPF 甚至提供了一个 WeakEventManager 基类以供使用。不幸的是,弱事件模式对于事件源和事件处理器两者都相当麻烦。开发人员不仅必须要为每一个事件类型创建一个自定义的WeakEventManager 子类,还得为事件处理器实现匹配的监听器接口。当你需要监控几个对象上的相同事件,并且不得不为每一个对象使用不同的事件处理器时,结果会特别令人沮丧。

.NET 4.5 让这件事情变得简单了多。它为WPF 开发人员提供了泛型版本的WeakEventManager 。使用该泛型版本不仅不需要实现事件的具体子类,还免去了使用监听器接口的必要。库的内部实际上使用了反射来连接事件,因此它的性能和其他替代方案相比并不是非常好。

这种新的方法也不是毫无限制。和原有的类一样,新的弱事件管理器在Silverlight 中并不可用,这反过来使得代码共享变得更加困难。另外,它还是继续约束在调度线程(dispatcher thread)中,这使得它无法被用在非WPF 的应用程序中。最后,事件引用是根据名称而不是类型。

InfoQ 邀请您在评论中发表自己最喜爱的弱事件实现。

查看英文原文: Weak Events in WPF 4.5

2012-02-19 02:171882
用户头像

发布了 125 篇内容, 共 44.5 次阅读, 收获喜欢 5 次。

关注

评论

发布
暂无评论
发现更多内容

夜读 PingCAP CTO 文章总结 TiDB 三个特性

TiDB 社区干货传送门

7.x 实践

《高效能笔记法》读后感

凌晞

结构化思维 冰山模型

SD-WAN保障服务质量的五大核心功能

Ogcloud

SD-WAN SD-WAN组网 SD-WAN服务商

每日一题:LeetCode-153. 寻找旋转排序数组中的最小值

Geek_4z9ami

面试 算法 LeetCode 二分查找 Go 语言

2024年南京等保测评机构名单看这里!

行云管家

网络安全 南京 等级保护 等保测评

基于 Flink 的实时数仓在曹操出行运营中的应用

Apache Flink

论学习方式和知识结构

凌晞

学习方法

制造业各种管理系统介绍及集成

万界星空科技

MES系统 ERP mes 万界星空科技 万界星空科技mes

万界星空科技MES系统中的生产防错功能

万界星空科技

MES系统 mes 万界星空科技 生产管理 数字化车间

如何使用MindStudio轻松搞定大模型全流程开发

华为云开发者联盟

人工智能 华为云 大模型 华为云开发者联盟

精通 GraphQL API 设计:最佳实践指南

Apifox

程序员 前端 后端 graphql GraphQL API

聊聊TiDB里面如何实现读写分离

TiDB 社区干货传送门

实践案例

首个!百度飞桨会客厅落地广州,打通AI应用落地的“最后一公里”

飞桨PaddlePaddle

人工智能 AI AI技术 百度飞桨 智能化

数据库防水坝是什么?有什么作用?有哪些优势?

行云管家

数据库 堡垒机 数据库安全

使用 HyBench 测试 TiDB

TiDB 社区干货传送门

性能测评 7.x 实践

2023 年值得一读的技术文章 | NebulaGraph 技术社区

NebulaGraph

图数据库

关于MySQL日期函数你不知道的用法

不在线第一只蜗牛

MySQL 数据库 前端 日期工具

WPF 4.5中的弱事件_.NET_Jonathan Allen_InfoQ精选文章