public TemplateTreeViewItemViewModel(BrowserViewModel browser, DiffTemplate diffTemplate) : base(browser) { this.diffTemplate = diffTemplate; this.diffTemplate.PropertyChanged += DiffTemplate_PropertyChanged; this.diffTemplate.SourceItem1.PropertyChanged += Template1_PropertyChanged; this.diffTemplate.SourceItem2.PropertyChanged += Template2_PropertyChanged; this.header1 = diffTemplate.Header1; this.header2 = diffTemplate.Header2; this.viewCommand = new DelegateCommand(this.View); this.isActivated = diffTemplate.DiffState != DiffState.Unchanged; this.Target = diffTemplate; foreach (var item in this.diffTemplate.DiffTable.Childs) { this.Items.Add(new TemplateTreeViewItemViewModel(browser, item.Template)); } this.Dispatcher.InvokeAsync(() => { if (this.DiffState != DiffState.Unchanged && this.Parent != null) { this.Parent.IsExpanded = true; } }); }
public TemplateTreeViewItemViewModel(DiffTemplate diffTemplate) { this.diffTemplate = diffTemplate; this.diffTemplate.PropertyChanged += DiffTemplate_PropertyChanged; this.diffTemplate.SourceItem1.PropertyChanged += Template1_PropertyChanged; this.diffTemplate.SourceItem2.PropertyChanged += Template2_PropertyChanged; this.viewCommand = new DelegateCommand(this.View); this.Target = diffTemplate; foreach (var item in this.diffTemplate.DiffTable.Childs) { this.Items.Add(new TemplateTreeViewItemViewModel(item.Template)); } }