private IProductElementViewModel GetProductNode(InnerPanelItem item) { IProductElement target = item.Product; string label = item.Text; IProductElementViewModel model = this.SearchInNodes(this.SourceViewModel.TopLevelNodes, target); if (model == null) { var element = this.SourceViewModel.TopLevelNodes[0].Data.As <IApplication>().Design.DummyCollection.As <IAbstractElement>(); var ctx = this.SourceViewModel.TopLevelNodes[0].Context; LabelElementViewModel model2 = new LabelElementViewModel(element, ctx) { Label = label }; model = model2; } else if (item is InnerPanelTitle && (item as InnerPanelTitle).ForceText) { var ctx = this.SourceViewModel.TopLevelNodes[0].Context; if (model.Data is IAbstractElement) { LabelElementViewModel model2 = new LabelElementViewModel(model.Data.As <IAbstractElement>(), ctx) { Label = item.Text }; model = model2; } //else //{ // LabelProductElementViewModel model2 = new LabelProductElementViewModel(model.Data.As<IProduct>(), ctx) // { // Label = item.Text // }; // model = model2; //} } return(model); }
private IProductElementViewModel GetProductNode(InnerPanelItem item) { IProductElement target = item.Product; string label = item.Text; IProductElementViewModel model = this.SearchInNodes(this.SourceViewModel.TopLevelNodes, target); if (model == null) { var element = this.SourceViewModel.TopLevelNodes[0].Data.As<IApplication>().Design.DummyCollection.As<IAbstractElement>(); var ctx = this.SourceViewModel.TopLevelNodes[0].Context; LabelElementViewModel model2 = new LabelElementViewModel(element, ctx) { Label = label }; model = model2; } else if (item is InnerPanelTitle && (item as InnerPanelTitle).ForceText) { var ctx = this.SourceViewModel.TopLevelNodes[0].Context; if (model.Data is IAbstractElement) { LabelElementViewModel model2 = new LabelElementViewModel(model.Data.As<IAbstractElement>(), ctx) { Label = item.Text }; model = model2; } //else //{ // LabelProductElementViewModel model2 = new LabelProductElementViewModel(model.Data.As<IProduct>(), ctx) // { // Label = item.Text // }; // model = model2; //} } return model; }