Example #1
0
        internal static IModelLayoutViewItem AddItem(this IModelViewLayout group, Expression <Func <object, object> > property)
        {
            var item = group.AddNode <IModelLayoutViewItem>();
            var mc   = (property.Body as MethodCallExpression);

            item.ViewItem = item.ViewItems[mc.Method.Name];
            return(item);
        }
Example #2
0
        internal static List <IModelLayoutViewItem> AddItems(this IModelViewLayout group, object properties)
        {
            var list = new List <IModelLayoutViewItem>();
            var pts  = properties.GetType().GetProperties();

            foreach (var item in pts)
            {
                var i = group.AddNode <IModelLayoutViewItem>();
                list.Add(i);
            }
            return(list);
        }
Example #3
0
        public override void UpdateNode(DevExpress.ExpressApp.Model.Core.ModelNode node)
        {
            IModelViewLayout  layoutNode = (IModelViewLayout)node;
            IModelLayoutGroup mainGroup  =
                layoutNode.GetNode(ModelDetailViewLayoutNodesGenerator.MainLayoutGroupName) as IModelLayoutGroup;

            mainGroup.Direction = FlowDirection.Horizontal;
            IModelLayoutViewItem myItem = mainGroup.AddNode <IModelLayoutViewItem>("Icon");

            myItem.Index               = int.MinValue;
            myItem.MaxSize             = new System.Drawing.Size(64, 64);
            myItem.SizeConstraintsType = XafSizeConstraintsType.Custom;
            myItem.ViewItem            = ((IModelCompositeView)layoutNode.Parent).Items.GetNode("Icon") as IModelViewItem;
        }
Example #4
0
 public override void UpdateNode(ModelNode node)
 {
     foreach (IModelView view in (IModelViews)node)
     {
         ArrayList itemsToRemove = new ArrayList();
         if (view is IModelDetailView)
         {
             foreach (IModelViewItem item in ((IModelDetailView)view).Items)
             {
                 if (item is IModelMemberViewItem)
                 {
                     IRemovedFromViewModel member = ((IModelMemberViewItem)item).ModelMember as IRemovedFromViewModel;
                     if (member != null && member.IsRemovedFromViewModel)
                     {
                         itemsToRemove.Add(item);
                     }
                 }
             }
         }
         if (view is IModelListView)
         {
             foreach (IModelColumn column in ((IModelListView)view).Columns)
             {
                 IRemovedFromViewModel member = column.ModelMember as IRemovedFromViewModel;
                 if (member != null && member.IsRemovedFromViewModel)
                 {
                     itemsToRemove.Add(column);
                 }
             }
         }
         foreach (IModelNode item in itemsToRemove)
         {
             item.Remove();
         }
         if (view is IModelDetailView && itemsToRemove.Count > 0)
         {
             IModelViewLayout layoutModel = ((IModelDetailView)view).Layout;
             layoutModel[0].Remove();
             new ModelDetailViewLayoutNodesGenerator().GenerateNodes((ModelNode)layoutModel);
         }
     }
 }
Example #5
0
        private void UpdateDetailViewLayout(IModelDetailView modelDetailView, DetailViewLayoutBuilderAttribute attribute, IModelViewLayout layoutNode)
        {
            //layoutAttribute.Options(modelDetailView);

            layoutNode.ClearNodes();

            BuildLayout(attribute.Layout, layoutNode, modelDetailView);
        }
Example #6
0
 public DetailViewObject(IModelViews views) : base(views)
 {
     Layout = View.Layout;
 }