示例#1
0
 ///--------------------------------------------------------------------------------
 /// <summary>This method applies view updates.</summary>
 ///--------------------------------------------------------------------------------
 public void ProcessEditViewPerformed(ViewEventArgs data)
 {
     try
     {
         bool isItemMatch = false;
         if (data != null && data.View != null)
         {
             foreach (ViewViewModel item in Views)
             {
                 if (item.View.ViewID == data.View.ViewID)
                 {
                     isItemMatch = true;
                     item.View.TransformDataFromObject(data.View, null, false);
                     item.OnUpdated(item, null);
                     item.ShowInTreeView();
                     break;
                 }
             }
             if (isItemMatch == false)
             {
                 // add new View
                 data.View.Solution = Solution;
                 ViewViewModel newItem = new ViewViewModel(data.View, Solution);
                 newItem.Updated += new EventHandler(Children_Updated);
                 Views.Add(newItem);
                 Solution.ViewList.Add(newItem.View);
                 Items.Add(newItem);
                 OnUpdated(this, null);
                 newItem.ShowInTreeView();
             }
         }
     }
     catch (Exception ex)
     {
         ShowIssue(ex.Message + ex.StackTrace);
     }
 }