/// <summary> /// Обновить визуальное представление пасеки. /// </summary> /// <param name="options">Опции обновления view-модели пасеки.</param> private void Refresh(RefreshApiaryVmOptions options) { IApiaryState state = this.GetStateForRefresh(options); this.tempHoneyCount = state.HoneyCount; this.RefreshBeehives(state.BeehiveStates); this.RaiseMainPropertiesChanged(); }
/// <summary> /// Получить/выбрать состояние пасеки, в соответствии с которым /// будет обновляться view-модель пасеки. /// </summary> /// <param name="options">Опции обновления view-модели пасеки.</param> /// <returns>Состояние пасеки.</returns> private IApiaryState GetStateForRefresh(RefreshApiaryVmOptions options) { IApiaryState result; switch (options) { case RefreshApiaryVmOptions.ShowActualApiary: result = this.apiary; break; case RefreshApiaryVmOptions.ShowTempSavedState: result = ApiaryXmlState.LoadState(); break; default: throw new ArgumentOutOfRangeException( nameof(options), "Передано непредусмотренное значение опций обновления view-модели пасеки"); } return(result); }