/// <summary> /// Populate the <see cref="PossibleActiveDomain" /> /// </summary> protected override void PopulateActiveDomain() { var sitedir = (SiteDirectory)this.Container; var currentActiveDomain = this.Thing.ActiveDomain; this.PossibleActiveDomain.Clear(); foreach (var domainOfExpertise in sitedir.Domain.OrderBy(x => x.Name)) { var activeDomainRowModel = new ActiveDomainRowViewModel(domainOfExpertise, !this.ShowDeprecatedDomains && !domainOfExpertise.IsDeprecated); this.PossibleActiveDomain.Add(activeDomainRowModel); } foreach (var activeDomain in currentActiveDomain) { var activeDomainRowModel = this.PossibleActiveDomain.FirstOrDefault(d => d.DomainOfExpertise == activeDomain); if (activeDomainRowModel != null) { this.ActiveDomain.Add(activeDomainRowModel); activeDomainRowModel.IsEnabled = true; } } }
/// <summary> /// Set active domain inactive state /// </summary> /// <param name="oldRow"> /// <see cref="ActiveDomainRowViewModel" /> /// </param> private void SetInactiveState(ActiveDomainRowViewModel oldRow) { oldRow.IsEnabled = false; }
/// <summary> /// Set active domain active state /// </summary> /// <param name="newRow"> /// <see cref="ActiveDomainRowViewModel" /> /// </param> private void SetActiveState(ActiveDomainRowViewModel newRow) { newRow.IsEnabled = true; }