信息系统开发平台OpenExpressApp-内置支持的属性编辑方式

目前支持属性编辑方式有: 基础类型(字符串、日期、枚举)、特定类型(下拉列表、memo弹出框、附件)

OpenExpressApp support some property editors: base data type(string, datatime, enum) and some given type(dropdown lookup、memo、attachment)

类图如下:

2009101609222530.jpg2009101609244626.jpg

下面分别对其他几种编辑方式进行简要说明,以便大家对这几种类型的使用有所了解。

1 基础类型

1.1 枚举

1.1.1 运行界面
2009101609281385.jpg

1.1.2 类库编写

  1.1.2.1 定义枚举类型

     public enum  BudgetType
    {
        [EnumAttr(
" 不确定 " )]
        Unknown 
=   0 ,
        [EnumAttr(
" 招标控制价源数据 " )]
        TenderPriceSource 
=   1 ,
        [EnumAttr(
" 投标报价源数据 " )]
        TenderOfferSource 
=   2 ,
        [EnumAttr(
" 调整预算源数据 " )]
        BudgetAdjustmentSource 
=   3 ,
        [EnumAttr(
" 竣工结算源数据 " )]
        FinalAccountSource 
=   4 ,
        [EnumAttr(
" 投标报价修正数据 " )]
        TenderOfferModified 
=   5 ,
        [EnumAttr(
" 调整预算修正数据 " )]
        BudgetAdjustmentModified 
=   6 ,
        [EnumAttr(
" 竣工结算修正数据 " )]
        FinalAccountModified 
=   7 ,
    }

  1.1.2.2 类库引用枚举类型

         private   static  PropertyInfo < BudgetType >  BudgetTypeProperty  =
          RegisterProperty(
new  PropertyInfo < BudgetType > ( " BudgetType " ));
        [Column][EntityProperty]
        [ShowInListAttribute, ShowInDetail, Label(
" 预算书类型 " )]
        
public  BudgetType BudgetType
        {
            
get  {  return  GetProperty(BudgetTypeProperty); }
            
set  { SetProperty(BudgetTypeProperty, value); }
        }

1.2 日期

1.2.1 运行界面

2009101609564966.jpg

1.2.2 类库编写

         private   static  PropertyInfo < DateTime >  SignDateProperty  =
          RegisterProperty(
new  PropertyInfo < DateTime > ( " SignDate " ));
        [Column]
        [EntityProperty]
        [Required, ShowInListAttribute, ShowInDetail, Label(
" 签约日期 " )]
        
public  DateTime SignDate
        {
            
get  {  return  GetProperty(SignDateProperty); }
            
set  { SetProperty(SignDateProperty, value); }
        }

2 下拉列表(列表和树形)

2.1 运行界面
2009101609351041.jpg                     2009101609371163.jpg

2.2 类库编写

 在对象属性上添加Lookup属性,系统自动会生成下拉编辑类型,如果下拉对象类型实现了ITreeNode接口,则会自动生成下拉树,否则下拉普通列表

         // 项目合同科目
         private   static  PropertyInfo < Guid >  projectContractSubjectIdProperty  =
            RegisterProperty(
new  PropertyInfo < Guid > ( " ProjectContractSubjectId " ));
        [Column][EntityProperty][ShowInDetail]
        [Lookup(
"ProjectContractSubject", DataSourceProperty = "Project.ProjectContractSubjects" )]
        [QueryItemValueType(QueryItemValueType.Id), NavigateQueryItem]
        
public  Guid ProjectContractSubjectId
        {
            
get  {  return  GetProperty(projectContractSubjectIdProperty); }
            
set  { SetProperty(projectContractSubjectIdProperty, value); }
        }

3 memo弹出框

3.1 运行界面

2009101609465749.jpg

3.2 类库编写

在对象属性上添加Editor属性,指定编辑器为EditorNames.Memo类型

         private   static  PropertyInfo < string >  DescriptionProperty  =
          RegisterProperty(
new  PropertyInfo < string > ( " Description " ));
        [Column]
        [EntityProperty]
        [Required, ShowInList, Label(
" 备注 " )]
        [OpenExpressApp.MetaAttribute.EditorAttribute(EditorNames.Memo)]
        
public   string  Description
        {
            
get  {  return  GetProperty(DescriptionProperty); }
            
set  { SetProperty(DescriptionProperty, value); }
        }

4 附件

4.1 运行界面
2009101609521254.jpg

4.2 类库编写

在对象属性上添加Editor属性,指定编辑方式为EditorNames.FileData

         // FileAttachment
         private   static  PropertyInfo < Guid ?>  FileIdProperty  =
            RegisterProperty(
new  PropertyInfo < Guid ?> ( " FileId " ));
        [Column][EntityProperty]
        [Editor(EditorNames.FileData)]
        [Lookup(
" FileAttachment " ), ShowInList]
        
public  Guid ?  FileId
        {
            
get  {  return  GetProperty(FileIdProperty); }
            
private   set  { SetProperty(FileIdProperty, value); }
        }

        
private   static  PropertyInfo < FileAttachment >  FileAttachmentProperty  =
                RegisterProperty(
new  PropertyInfo < FileAttachment > ( " FileAttachment " ));
        
public  FileAttachment FileAttachment
        {
            
get
            {
                
return  GetProperty(FileAttachmentProperty);
            }
            
set
            {
                SetProperty(FileAttachmentProperty, value);
            }
        }

更多内容:productView-pdf_46x35.gif 开源信息系统开发平台之OpenExpressApp框架.pdf

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值