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;
                }
            });
        }
Example #2
0
        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));
            }
        }