private void AddSolutionComponentToMergedSolution( SolutionComponentBase component, List <MergedInSolutionComponent> mergedComponents) { MergedInSolutionComponent newItem = new MergedInSolutionComponent(component); MergedInSolutionComponent reasonWhyIsNotIn = null; newItem.IsIn = true; if (newItem.IsChild && newItem.ParentSolutionComponent == null) { newItem.ReasonWhyIsNot = MergedInSolutionComponent.ReasonWhyIsNotType.ParentIsNot; newItem.IsIn = false; } else { reasonWhyIsNotIn = GetReasonWhyIsNotIn(component, mergedComponents); } if (reasonWhyIsNotIn != null) { newItem.IsIn = false; newItem.RemovedByComponent = reasonWhyIsNotIn; newItem.ReasonWhyIsNot = MergedInSolutionComponent.ReasonWhyIsNotType.OverComponent; reasonWhyIsNotIn.HasRemovedComponents.Add(newItem); } mergedComponents.Add(newItem); }
public ComponentLayersManager( IOrganizationService service, CrmConnection currentCrmConnection, SolutionManager solutionManager, List <Setting> settings, MergedInSolutionComponent component) { InitializeComponent(); this._viewModel = LayoutRoot.Resources["viewModel"] as ComponentLayersManagerViewModel; _viewModel.Initialize(this, service, currentCrmConnection, solutionManager, settings, component); }
private void SolutionComponentsList_SelectionChanged(object sender, SelectionChangedEventArgs e) { SolutionComponentsList.UpdateLayout(); if (e.AddedItems.Count == 1) { MergedInSolutionComponent item = e.AddedItems[0] as MergedInSolutionComponent; var listViewItem = SolutionComponentsList.ItemContainerGenerator.ContainerFromItem(item) as ListViewItem; listViewItem.Focus(); } }
public void Initialize( Window window, IOrganizationService service, CrmConnection crmConnection, SolutionManager solutionManager, List <Setting> settings, MergedInSolutionComponent component) { this._window = window; this.CurrentSolutionManager = solutionManager; this.CurrentSolutionComponent = component; RegisterCommands(); }
private MergedInSolutionComponent GetReasonWhyIsNotIn( SolutionComponentBase component, List <MergedInSolutionComponent> mergedComponents) { if (component.Type == SolutionComponentType.Entity && component.RootComponentBehavior != null) { MergedInSolutionComponent sameObjectId = mergedComponents.FirstOrDefault(k => k.ObjectId == component.ObjectId && component.RootComponentBehavior.Value > k.RootComponentBehavior.Value); return(sameObjectId); } else if (component.IsChild) { MergedInSolutionComponent sameObjectId = mergedComponents.FirstOrDefault(k => k.ObjectId == component.ObjectId); if (sameObjectId == null) { var parentComponent = mergedComponents .FirstOrDefault(k => k.Id == component.ParentSolutionComponent?.Id); if (parentComponent != null) { if (!parentComponent.IsIn) { return(parentComponent.RemovedByComponent); } return(null); } return(null); } return(sameObjectId); } return(null); }
private void SetSolutionComponent(MergedInSolutionComponent component) { _viewModel.Component = component; }