【发布时间】:2009-03-13 12:50:27
【问题描述】:
我已经涉足 WPF 几个月了,我已经设法掌握了大部分内容以及使用它的原因/时间,但我仍在努力了解 PageFunction 类的价值。
谁能给我一个简单但具体的例子,说明 PageFunction 何时可能是该工作的正确工具?
【问题讨论】:
标签: wpf pagefunction
我已经涉足 WPF 几个月了,我已经设法掌握了大部分内容以及使用它的原因/时间,但我仍在努力了解 PageFunction 类的价值。
谁能给我一个简单但具体的例子,说明 PageFunction 何时可能是该工作的正确工具?
【问题讨论】:
标签: wpf pagefunction
主要是,这似乎是一种在基于任务的 UI 中形式化分支的模式。
假设您有一个带有一个可选功能复选标记的表单,但该功能需要额外的信息,这些信息太复杂而无法放在同一页面上。 使用这种模式可以将信息收集委托给另一个组件。
此外,还应用了一种策略模式,因为您可以让各种子系统能够收集相同的信息,它们都继承了 PageFunction(of T),因此实际调用它们的代码不需要知道关于它的任何细节。
这些只是一些想法,我没有仔细研究过。
【讨论】:
页面中的PageFunction = 桌面应用程序中的对话框(无页面)。
每当您在桌面应用程序中使用对话框并且想要为您的程序开发类似网络导航的行为时,您都可以使用 PageFunction。
【讨论】:
页面功能启用的主要功能是使用子任务实现工作流并管理返回堆栈。
如果你只是依赖页面到页面的导航,很难暂停当前的导航路径,做其他事情,然后再回来继续。 PageFunctions 通过返回和展开导航堆栈的概念来实现这一点。
我在这里提供了一些现实世界的例子:http://www.paulstovell.com/wpf-navigation
【讨论】: