/// <summary>
 /// The logic to run when the <see cref="ModelSearcher" /> is cleared.
 /// </summary>
 protected virtual void OnModelSearcherCleared()
 {
     _backForwardNavigator.UpdateCurrentItem(-1);
     _backForwardNavigator.UpdateNavigationCollection(new int[0]);
     DependentLocators.ForEach(locator => locator.RequestDisable(_adminToken));
     Model.Clear();
     ClearAndDisableDependentLocators(_adminToken);
 }
 /// <summary>
 /// Used to refresh all locators save for the <see cref="ModelSearcher" />.
 /// </summary>
 /// <param name="token">The token for use in locking.</param>
 /// <returns>Task for async use.</returns>
 protected Task RefreshDependentLocators(object token) =>
 Task.WhenAll(DependentLocators.Select(loc => loc.RefreshLocator(Model.Id, token)).ToArray());