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 提供的(比如 BrowsableAttributeDefaultPropertyAttribute  DisplayNameAttribute)

下面的列表是在 System.ComponentModel 命名空間下的,在XAF中他們是有效的.

Attribute

說明

備注

BrowsableAttribute 屬性是否可見,指定為false后,相當於詳細視圖,列表視圖,搜索視圖,都不可見了.就相當於一個快捷方式. 通常是要隱藏一個屬性時用它.
DefaultPropertyAttribute 和XafDefaultPropertyAttribute是一樣的.:
  • 顯示在搜索編輯器中;
  • 對象的標題,比如詳細視圖中;
  • 全文檢索中也會被用到;
  • 顯示在列表視圖的第一列.
 
DescriptionAttribute 做自定義模塊時會用到.指示模塊的備注信息  
DisplayNameAttribute

與 XafDisplayNameAttribute 相同.

 
PasswordPropertyTextAttribute 在字符串屬性上面寫,編輯器就變成了密碼輸入框.  

 



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM