private void AddDescriptor(DomainMemberDescriptor descriptor) { var viewModel = descriptor.Host == null?this.CreateInstance(this.authentication, descriptor, this.Owner) : descriptor.Host as DomainMemberTreeItemBase; viewModel.Parent = this; descriptor.Host = viewModel; }
private void RemoveDescriptor(DomainMemberDescriptor descriptor) { foreach (var item in this.Items.ToArray()) { if (item is DomainMemberTreeItemBase viewModel && viewModel.Descriptor == descriptor) { this.Items.Remove(viewModel); } } }
protected virtual DomainMemberTreeItemBase CreateInstance(Authentication authentication, DomainMemberDescriptor descriptor, object owner) { return(new DomainMemberTreeItemBase(authentication, descriptor, owner)); }