样式、行为、模板与自定义控件全解析
1. 源与目标的互换
在操作的源和目标方面,有一个鲜为人知的事实:它们是可互换的。开发者能够设置操作的目标和源元素。可以使用操作的 TargetName 属性设置目标,同时,还能通过包含触发器的 SourceName 属性设置源。这意味着操作的源不一定是放置操作的元素。
这种设计支持两种不同的场景:
- 告知模型 :触发器和操作嵌套在源元素内部,即告知操作对特定目标执行操作。
- 监听模型 :操作在目标中定义,并让其监听不同的源元素。
无论哪种方式,操作的工作方式相同,并且在 Expression Blend 中都有便捷的设计时支持。
2. 行为的创建
虽然操作常被描述为行为,但还有另一种由 Behavior 类表示的行为。行为和操作的目标相同,都是封装 UI 功能,以便无需编写代码就能将其应用于元素。不过,操作是完成单个任务的独立代码片段,每个操作都能独立使用,且操作和触发器相互补充,单个操作不与特定触发器关联。
而行为则将相关操作组合在一起,涵盖了触发器(监听特定事件或更改)和操作(执行相应操作)的工作。例如,Deep Zoom 功能由多个事件处理程序组成,允许使用鼠标按钮和鼠标滚轮平移和缩放 Deep Zoom 图像,这些代码被封装在一个名为 DeepZoomBehavior 的行为中。
创建自定义行为示例 :
超级会员免费看
订阅专栏 解锁全文
37

被折叠的 条评论
为什么被折叠?



