示例#1
0
 public override void CustomizeTypesInfo(DevExpress.ExpressApp.DC.ITypesInfo typesInfo)
 {
     base.CustomizeTypesInfo(typesInfo);
     typesInfo.FindTypeInfo(typeof(ImageSourceBrowserBase)).AddAttribute(new HintAttribute("", ViewType.Any, "Hint"));
     DevExpress.ExpressApp.DC.IMemberInfo hintMember = typesInfo.FindTypeInfo(typeof(ImageSourceBrowserBase)).CreateMember("Hint", typeof(string));
     hintMember.AddAttribute(new SizeAttribute(1024));
 }
        public override void CustomizeTypesInfo(DevExpress.ExpressApp.DC.ITypesInfo typesInfo)
        {
            base.CustomizeTypesInfo(typesInfo);
            var typeInfo = typesInfo.FindTypeInfo(typeof(Duplicate)) as DevExpress.ExpressApp.DC.TypeInfo;

            typeInfo.AddKeyMember(typeInfo.FindMember("Id"));
        }
示例#3
0
        public override void CustomizeTypesInfo(DevExpress.ExpressApp.DC.ITypesInfo typesInfo)
        {
            base.CustomizeTypesInfo(typesInfo);
            var typeInfo = typesInfo.GetStateTypeInfo();

            if (typeInfo != null && typeInfo.FindMember(HideIfCriteriaDoNotFit) == null)
            {
                typeInfo.CreateMember(HideIfCriteriaDoNotFit, typeof(bool));
            }
        }
        public override void CustomizeTypesInfo(DevExpress.ExpressApp.DC.ITypesInfo typesInfo)
        {
            base.CustomizeTypesInfo(typesInfo);
            var typeInfos = typesInfo.PersistentTypes.Where(info => info.ImplementedInterfaces.Contains(typesInfo.FindTypeInfo(typeof(IRequireSchedulerInitialization))));

            typeInfos.Each(typeInfo => typeInfo.AddAttribute(new AdditionalViewControlsRuleAttribute("RequireSchedulerInitialization_for_" + typeInfo.Name, "1=1",
                                                                                                     "1=1", "Scheduler is not started", Position.Top)
            {
                ViewType = ViewType.DetailView
            }));
        }
示例#5
0
        public override void CustomizeTypesInfo(DevExpress.ExpressApp.DC.ITypesInfo typesInfo)
        {
            base.CustomizeTypesInfo(typesInfo);
            var type     = Application == null ? typeof(XpandRole) : RoleType;
            var typeInfo = typesInfo.FindTypeInfo(type);

            if (typeInfo != null && typeInfo.FindMember("ModifyLayout") == null)
            {
                typeInfo.CreateMember("ModifyLayout", typeof(bool));
            }
        }
示例#6
0
 public override void CustomizeTypesInfo(DevExpress.ExpressApp.DC.ITypesInfo typesInfo)
 {
     base.CustomizeTypesInfo(typesInfo);
     if (_existentTypesMemberCreator == null && RuntimeMode && (!string.IsNullOrEmpty(ConnectionString) || Application.ObjectSpaceProvider is DataServerObjectSpaceProvider))
     {
         AddToAdditionalExportedTypes("Xpand.Persistent.BaseImpl.PersistentMetaData");
         WCTypesInfo.Instance.Register(GetAdditionalClasses(ModuleManager));
         _existentTypesMemberCreator = new ExistentTypesMemberCreator();
         var session = Application.FindModule <WorldCreatorModuleBase>().GetUnitOfWork();
         _existentTypesMemberCreator.CreateMembers(session, typesInfo);
     }
 }
示例#7
0
        public override void CustomizeTypesInfo(DevExpress.ExpressApp.DC.ITypesInfo typesInfo)
        {
            base.CustomizeTypesInfo(typesInfo);
            var classInfo = XpandModuleBase.Dictiorary.GetClassInfo(typeof(Customer));

            if (classInfo.FindMember("SumOfOrderTotals") == null)
            {
                var attributes = new Attribute[] { new VisibleInListViewAttribute(false), new VisibleInLookupListViewAttribute(false),
                                                   new VisibleInDetailViewAttribute(false), new PersistentAliasAttribute("Orders.Sum(Total)") };
                classInfo.CreateCalculabeMember("SumOfOrderTotals", typeof(float), attributes);
                typesInfo.RefreshInfo(typeof(Customer));
            }
        }
示例#8
0
        public override void CustomizeTypesInfo(DevExpress.ExpressApp.DC.ITypesInfo typesInfo)
        {
            base.CustomizeTypesInfo(typesInfo);
            var classInfo = XpandModuleBase.Dictiorary.GetClassInfo(typeof(Customer));

            if (classInfo.FindMember("OrderLinesFromCode") == null)
            {
                var attributes = new Attribute[] { new VisibleInListViewAttribute(false), new VisibleInLookupListViewAttribute(false),
                                                   new VisibleInDetailViewAttribute(false) };
                classInfo.CreateCollection("OrderLinesFromCode", typeof(OrderLine), "Order.Customer.Oid='@This.Oid'", attributes);
                typesInfo.RefreshInfo(typeof(Customer));
            }
        }
示例#9
0
        public override void CustomizeTypesInfo(DevExpress.ExpressApp.DC.ITypesInfo typesInfo)
        {
            base.CustomizeTypesInfo(typesInfo);
            var typeInfos = typesInfo.PersistentTypes.Where(info => info.FindAttribute <PessimisticLockingMessageAttribute>() != null);

            foreach (var typeInfo in typeInfos)
            {
                var memberInfo = typeInfo.FindMember("LockedUserMessage");
                if (memberInfo == null)
                {
                    var xpClassInfo = Dictiorary.GetClassInfo(typeInfo.Type);
                    var lockedUserMessageXpMemberInfo = new LockedUserMessageXpMemberInfo(xpClassInfo);
                    lockedUserMessageXpMemberInfo.AddAttribute(new BrowsableAttribute(false));
                    XafTypesInfo.Instance.RefreshInfo(typeInfo);
                }
            }
        }
        public override void CustomizeTypesInfo(DevExpress.ExpressApp.DC.ITypesInfo typesInfo)
        {
            base.CustomizeTypesInfo(typesInfo);
            var classInfo = typeof(Customer).GetTypeInfo().QueryXPClassInfo();

            if (classInfo.FindMember("SumOfOrderTotals") == null)
            {
                var xpandCalcMemberInfo = classInfo.CreateCalculabeMember("SumOfOrderTotals", typeof(float), "Orders.Sum(Total)");
                var attributes          = new Attribute[] { new VisibleInListViewAttribute(false), new VisibleInLookupListViewAttribute(false),
                                                            new VisibleInDetailViewAttribute(false) };
                foreach (var attribute in attributes)
                {
                    xpandCalcMemberInfo.AddAttribute(attribute);
                }

                typesInfo.RefreshInfo(typeof(Customer));
            }
        }