XAF应用开发教程-内置Attribute功能列表
在 XAF 框架,一些用来生成一个业务应用程序的信息是在Attribute中指定。您可以将属性应用到业务类 (或它的成员) 指定验证规则,指定如何对数据进行显示、 设置关系类等。本主题提供了有关在何处以及如何可以应用这些属性的内置 XAF 框架属性和信息的列表。
Attribute |
说明 |
---|---|
ActionAttribute | 在业务对象上书写方法,并在方法上面加上这个Attribute,在界面上,会出现一个简单按钮或弹出窗口按钮. |
AppearanceAttribute | 在业务类或方法\属性上面书写此Attribute,可以控制相关的外观控制,比如:控件是否禁用,是否只读,背景颜色变化,字体,按钮是否可用等. |
AggregatedAttribute | 在XPCollection<T>类型的属性上面写,可以控制主从表结构的业务对是否为聚合关系. 什么聚合?就是主对象与子对象放到一起对应着业务上的一个内容,比如,订单,订单明细,这两个表放到一起才是完整的. |
CalculatedAttribute | 在属性上面写,属性的结果将是计算而来的. |
CalculatedPersistentAliasAttribute | Applied to a business class. Allows you to dynamically configure a persistent alias for the target business class' property. |
CaptionsForBoolValuesAttribute | 在布尔类型的属性上面写,可以指定true,false的值显示为指定的值,比如,换成男/女,真/假,是/否.但不要把这个做为汉化之用. |
CodeRuleAttribute | Applied to a validation rule. Specifies that the rule is intended for a particular business class and does not have a corresponding validation attribute. |
CollectionSourceModeAttribute | Specifies the mode of operation for the Collection Sources created by List Property Editors representing the CollectionSourceModeAttribute's target property. |
CreateInstanceAttribute | Specifies that a Domain Component's target method will create Domain Component instances. |
CreatableItemAttribute | 在BO/DC上面写,在web下面与win下面不太一样.可以快速新建菜单上显示这个BO. |
CriteriaOptionsAttribute | 当使用条件编辑器时,在这里指定一些选项,比如,条件应用到哪个BO上面. |
DataSourceCriteriaAttribute | 可以应用于BO类型的属性,或XPCollection<T>上面,指定选择(Link,链接)对象时,用什么条件去过滤数据源,比如,有个客户属性,选择客户时,某一场景中需要显示出所有年龄在30到50中间的客户. |
DataSourceCriteriaPropertyAttribute | 与上面的功能相同,但这个条件不是写死的,是从另一个属性中读过来的.这样可以在那个属性中动态的接出条件来. |
DataSourcePropertyAttribute | 功能与上面两个类型,但直接从某个属性中指定可选择的数据来源了,更加动态了,不过要考虑性能问题还是少用为好,因为程序员拼出来的数据源,说不准怎么来的. |
DefaultClassOptionsAttribute | 加上这个后,BO就在导航栏上出现了,快速新建按钮也有了,报表中也会出现,我只观察到了这么多,这个就是个快捷方式. |
DefaultListViewOptionsAttribute | 在BO上面写,一些常见的默认列表视图的控制. |
DelayedAttribute | 在属性上写,延迟加载该属性.官方说是EF用的.但我在xpo中也用过啊! |
DetailViewLayoutAttribute | 在属性上写,供在BO上对详细视图进行简单的布局. |
DomainComponentAttribute | 在接口上写,表明这是一个DC,在非持久化的BO上面写,表明让系统生成这个BO的视图. |
ExpandObjectMembersAttribute | 写在复杂类型的属性上面,可以将属性类型中的属性展开,在视图上直接显示出来.比如,客户.地址.详细地址,与详细地址同级别的还有一堆的属性,用了这个后就可以一次性的显示出来了. |
FieldSizeAttribute | 字符型属性在库中建立字段时的长度,-1为不限长. |
FileAttachmentAttribute | 应用到类上,表明值是文件类型,需要实现IFileData接口. |
FileTypeFilterAttribute | 在上传文件时,如何过滤文件名?扩展名? |
FriendlyKeyPropertyAttribute | Specifies a property that is considered an analog of the GUID property to allow the use of more suitable values. |
ImageEditorAttribute | 图像编辑器的一些设置. |
ImageNameAttribute | 写在BO上面,设置一个图标,在列表上,详细视图上,都可以看到这个图标. |
ImagesForBoolValuesAttribute | 写在布尔型属性上面,可以指定布尔型值的图标,比如true用一个对号,false用一个叉叉. |
ImmediatePostDataAttribute | 在web下面有用,写在属性上,指示当值发生变化时,是否需要回发到服务端,比如, 总价=单价*数量,那么,单位,数量变化时,总价需要做个计算,那么就要在单价,数量上面加上这个Attribute. |
IndexAttribute | 在属性上面写,建表时,建个索引出来,为性能捉想. |
KeyAttribute | 写在属性上面,指示这个属性就是主键. |
ListEditorAttribute | 指定要使用的列表控件. |
ListViewFilterAttribute | 给列表内置一些过滤条件,在界面上显示一个下拉框,一选,就过滤啦. |
LookupEditorModeAttribute | 指示搜索对话框长什么样子,比如全部显示在下拉框中,或是弹出个窗口,或是自动,自动是指超过25条(可改)则显示弹出框.自动会有些性能影响,因为要算当前有多少条数据. |
ModelDefaultAttribute | 在代码中写ModelEditor中的默认值,很多东东可以用这个设置了,并且可以替换掉一些前面的属性,比如本来可以用[XafDisplayName("显示名")]改为[ModelDefault("Caption","显示名")].至于Caption这个关键字要怎样知道,可以打开ModelDeditor查看. |
ModelNodesGeneratorAttribute | 自己写个类,是生成模型的,需要加这个.具体还是需要好几步的. |
NavigationItemAttribute | 某个BO是否显示在导航栏中. |
NonCloneableAttribute | 克隆模块:不允许这个BO克隆. |
NotClonedInfoAttribute | Applied to a business class. Specifies a business class' string property that can hold property values that were not cloned. |
ObjectCaptionFormatAttribute | 指示在详细视图中Bo的显示标题 |
PropertyEditorAttribute | 要使用什么编辑器,默认都是自动的,只有想改变默认时才用这个. |
Attributes from the Validation module: RuleBaseAttribute, RuleCombinationOfPropertiesIsUniqueAttribute, RuleCriteriaAttribute, RuleFromBoolPropertyAttribute, RuleIsReferencedAttribute, RuleObjectExistsAttribute, RuleRangeAttribute, RuleRegularExpressionAttribute, RuleRequiredFieldAttribute, RuleStringComparisonAttribute, RuleUniqueValueAttribute, RuleValueComparisonAttribute. |
这几个都是做验证规则用的. RuleCombinationOfPropertiesIsUniqueAttribute 组合唯一,在类上面,指定多个属性,这些属性是组合唯一的. RuleCriteriaAttribute, 在类上面,数据必须满足指定的条件. RuleFromBoolPropertyAttribute, 在布尔型属性上面,值必须为真. RuleObjectExistsAttribute, 指定的对象必须存在. RuleRangeAttribute, 属性的值必须在指定的范围内. RuleRegularExpressionAttribute, 属性的值必须满足正则表达式的要求. RuleRequiredFieldAttribute, 属性是必填的. RuleStringComparisonAttribute, 属性的值和字符串进行比较. RuleUniqueValueAttribute, 属性的值必须是唯一的. RuleValueComparisonAttribute.属性的值和指定的值(另一个属性)进行比较. |
SearchClassOptionsAttribute | 用于全文检索的一些选项. |
SearchMemberOptionsAttribute | 也是全文检索用的,设置哪些字段参与或不参与. |
ToolTipAttribute | 属性的提示文字. |
ViewItemAttribute | Applied to a custom View Item. Registers a View Item in an application and specifies the type of the Application Model's node used by a custom View Item. |
VisibleInDetailViewAttribute | 属性在详细视图中是否可见 |
VisibleInListViewAttribute | 属性在列表视图中是否可见 |
VisibleInLookupListViewAttribute | 属性在搜索视图中是否可见. |
VisibleInReportsAttribute | 做报表时是否可以选择这个BO. |
XafDefaultPropertyAttribute | 默认属性,在引用类型被用于属性时,用该引用类的哪个字段做为显示标题. 比如,订单中的客户,选择完成后,应该显示客户姓名,那么[XafDefaultPropety("姓名")]写在客户BO上面即可. |
XafDisplayNameAttribute | 指定显示名称,比如BO叫Customer,[XafDisplayName("客户")],写到BO上面. |
你也可以使用一些属性是.net 提供的(比如 BrowsableAttribute, DefaultPropertyAttribute DisplayNameAttribute)
下面的列表是在 System.ComponentModel 命名空间下的,在XAF中他们是有效的.
Attribute |
说明 |
备注 |
---|---|---|
BrowsableAttribute | 属性是否可见,指定为false后,相当于详细视图,列表视图,搜索视图,都不可见了.就相当于一个快捷方式. | 通常是要隐藏一个属性时用它. |
DefaultPropertyAttribute | 和XafDefaultPropertyAttribute是一样的.:
|
|
DescriptionAttribute | 做自定义模块时会用到.指示模块的备注信息 | |
DisplayNameAttribute |
与 XafDisplayNameAttribute 相同. |
|
PasswordPropertyTextAttribute | 在字符串属性上面写,编辑器就变成了密码输入框. |
XAF应用开发教程-内置Attribute功能列表的更多相关文章
- IDEA内置git功能的使用教程
IDEA内置git功能的使用教程 IDEA git IDEA被公认为是最好的java开发工具,除了在代码助手.代码提示.重构工具等方面有比较好的支持,还在各类版本控制工具(git.tfs.svn.g ...
- Unity 2D游戏开发教程之摄像头追踪功能
Unity 2D游戏开发教程之摄像头追踪功能 上一章,我们创建了一个简单的2D游戏.此游戏中的精灵有3个状态:idle.left和right.这看起来确实很酷!但是仅有的3个状态却限制了精灵的能力,以 ...
- odoo 内置协议说明列表
odoo 内置协议说明列表 在以下目录. /odoo/odoo/addons/base/models/ir_module.py license = fields.Selection([ ('GPL-2 ...
- XAF应用开发教程(七)外观控制模块
很多时候,我们需要按照不同的条件显示不同的效果,在传统的软件开发中,我们会直接使用 控件名称.BackColor,Enable,Visible等属性进行控制. 如果一个业务对象在多处使用,要么我们会去 ...
- XAF应用开发教程(五)验证模块
数据验证是应用程序开发中使用频率最高的功能模块,本节详细介绍一下XAF中如何使用验证模块. XAF 验证模块内置了下面的一些验证规则: 验证规则类型 说明 RuleCombinationOfPrope ...
- XAF应用开发教程(二)业务对象模型之简单类型属性
使用过ORM的朋友对这一部分理解起来会非常快,如果没有请自行补习吧:D. 不说废话,首先,我们来开发一个简单的CRM系统,CRM系统第一个信息当然是客户信息.我们只做个简单 的客户信息来了解一下XAF ...
- XAF应用开发教程(一) 创建项目
XAF是DevExpress公司的快速开发框架,全称eXpress Application Framework,是企业信息系统的开发利器,快速开发效果显著,在.net框架中,笔者至今没有找到一款可以与 ...
- JavaScript 核心参考教程 内置对象
这个标准基于 JavaScript (Netscape) 和 JScript (Microsoft).Netscape (Navigator 2.0) 的 Brendan Eich 发明了这门语言,从 ...
- Android开发中内置apk程序
首先申明,这里的方法介绍是针对我司自己项目中的具体开发板而做的. Mg701内置APK有三种方式 一. 这种方法必须要自己编写Android.mk文件(关于Android.mk可以参考 ...
随机推荐
- Excel文件读写
C#读写Excel的方式有好几种,具体参考文章: http://www.cnblogs.com/huipengkankan/archive/2011/07/28/2120407.html 昨天大致研究 ...
- JS中的_proto_(2)
function God(){} function Foo(){ this.name="Foo~~"; } Foo.prototype = new God(); function ...
- Hadoop学习笔记: MapReduce二次排序
本文给出一个实现MapReduce二次排序的例子 package SortTest; import java.io.DataInput; import java.io.DataOutput; impo ...
- Linux下使用shell实现上传linux下某个目录下所有文件到ftp
首先我们需要搞清楚单个文件怎么上传,把这个单文件上传到ftp上的实现命名为一个:upload_to_ftp_command.sh 之后,需要弄清楚怎么实现遍历一个目录下的所有文件的,把这个遍历某个目录 ...
- Velocity(6)——#if指令
下面是#If指令的一个简单而完整的示例: #if ($foo < 10) Go North #elseif ($foo == 10) Go East #else Go West#end 不能漏掉 ...
- C#文件与流(FileStream、StreamWriter 、StreamReader 、File、FileInfo、Directory、directoryInfo、Path、Encoding)
(FileStream.StreamWriter .StreamReader .File.FileInfo.Directory.DirectoryInfo.Path.Encoding) C#文 ...
- Android -- 仿ios上下反弹效果
1,前几天在一个app上看到了滑动反弹效果,觉得这个效果挺不错的,然后想自己来实现一下,在网上查了一下基本上都是大致的说了下思路,自己看了一下,决定把实现的思路来详细的写下来,先看一下我们实现的效果吧 ...
- 说一下linux中shell的后台进程与前台进程
环境: 操作系统:archlinux; 终端模拟器:rxvt-unicode(urxvt); shell:bash; 这里所说的后台进程是指在命令行后面加一个 ampersand(&),前台进 ...
- Failed to execute request because the App-Domain could not be created.
原错误信息: 服务器应用程序不可用 您试图在此 Web 服务器上访问的 Web 应用程序当前不可用.请点击 Web 浏览器中的“刷新”按钮重试您的请求. 管理员注意事项: 详述此特定请求失败原因的错误 ...
- Safari中的new Date()格式化坑
今天在测试的时候发现,在Chrome中的如下代码: new Date("2014-03-09"); 在Safari中报错invalid date.经过查阅资料找到类似的问答: st ...