Ejemplo n.º 1
0
        public static bool Get_IsRemovedFromViewModel(IRemovedFromViewModel instance)
        {
            RemoveFromViewModelAttribute attr = ((IModelMember)instance).MemberInfo.FindAttribute <RemoveFromViewModelAttribute>();

            if (attr != null)
            {
                return(attr.IsPropertyRemoved);
            }
            else
            {
                return(false);
            }
        }
Ejemplo n.º 2
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);
         }
     }
 }