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); }
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); }
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; }
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); } } }
private void UpdateDetailViewLayout(IModelDetailView modelDetailView, DetailViewLayoutBuilderAttribute attribute, IModelViewLayout layoutNode) { //layoutAttribute.Options(modelDetailView); layoutNode.ClearNodes(); BuildLayout(attribute.Layout, layoutNode, modelDetailView); }
public DetailViewObject(IModelViews views) : base(views) { Layout = View.Layout; }