商信互联
应用程序模型由节点及其属性组成。节点可以有子节点。它们形成了应用程序模型的树形结构。本主题说明如何形成特定应用程序的应用程序模型结构。
通过接口定义应用程序模型的树节点。这些接口是从基础IModelNode接口派生的。它的成员管理对父节点和子节点以及对当前节点属性的访问。
应用程序模型的根节点(应用程序节点)由IModelApplication接口定义。此接口定义节点的属性(Title,Company,Description等)和子节点(ActionDesign,Views和其他)。每个子节点由定义其属性和子节点的接口表示。因此,根节点及其子节点一起构成了应用程序模型的基本结构。
基本结构是可定制的。有所谓的扩展器。它们将属性和/或子节点添加到某个“应用程序模型”节点。这些扩展程序也由从IModelNode接口派生的接口定义。为了将它们添加到应用程序模型的最终结构中,使用了ModuleBase类公开的预定义成员和Controller的IModelExtender接口。例如,FilterController延伸的ListView与节点的过滤器通过将节点IModelListViewFilters扩展到IModelListView节点。在实现自定义模块或控制器时,可以根据需要扩展应用程序模型。要了解如何执行此操作,请参阅“代码中的扩展和自定义应用程序模型”帮助主题。
启动应用程序时,将从代码中收集所有定义和扩展应用程序模型的接口。然后,将编译一个实现所有这些接口的对象。该对象代表实际的应用程序模型。因此,根据应用程序中使用的模块和控制器,应用程序模型结构可能会有所不同。
以下各节列出了XAF随附的通用和扩展的应用程序模型接口。
“动作”节点表示“动作”设置。延伸剂:
ActionContainerViewItem节点定义一个显示Action容器的View Item 。
ActionDesign节点提供对Actions,Action Containers,Controller以及对Action禁用的可能原因的访问。延伸剂:
“应用程序”节点的属性提供有关当前应用程序的常规信息。延伸剂:
ChartSettings节点提供对列表视图使用的图表列表编辑器设置的访问。延伸剂:
“类”节点从业务模型定义一个持久类,并提供对其成员列表的访问。延伸剂:
列节点定义显示特定属性的列。延伸剂:
DetailView节点定义特定业务类的详细视图。延伸剂:
LayoutGroup节点定义属于特定组的视图项的布局。延伸剂:
LayoutItem节点定义了详细视图中特定视图项的布局。延伸剂:
ListView节点定义特定业务类的List View。延伸剂:
NavigationItems节点指定“导航操作”使用的导航结构。延伸剂:
“选项”节点允许编辑不同的UI设置。延伸剂:
PropertyEditor节点定义特定属性的属性编辑器。延伸剂:
TabbedGroup节点定义选项卡式组中“视图项”的布局。延伸剂:
用作IModelListView,IModelDetailView和IModelDashboardView接口的基本接口。延伸剂: