private static void ChooseProperContent(DependencyObject obj, DependencyPropertyChangedEventArgs args) { ListContentControl control = (ListContentControl)obj; switch ((ListViewModelStates)args.NewValue) { case ListViewModelStates.Results: control.Content = control.ResultsView; break; case ListViewModelStates.Idle: //if (IsAnimationEnabled) ChangeContentUsingAnimation(InitialView); //else control.Content = control.InitialView; break; case ListViewModelStates.NoResults: //if (IsAnimationEnabled) ChangeContentUsingAnimation(NoResultsView); //else control.Content = control.NoResultsView; break; case ListViewModelStates.Progress: //if (IsAnimationEnabled) ChangeContentUsingAnimation(ProgressView); //else control.Content = control.ProgressView; break; case ListViewModelStates.Error: //if (IsAnimationEnabled) ChangeContentUsingAnimation(ErrorView); //else control.Content = control.ErrorView; break; default: throw new NotImplementedException("Stan " + (ListViewModelStates)args.NewValue + " nie jest obsługiwany przez kontrolkę."); } }
private static void InitialViewChangedCallback(DependencyObject dependencyObject, DependencyPropertyChangedEventArgs dependencyPropertyChangedEventArgs) { ListContentControl control = dependencyObject as ListContentControl; control.Content = control.InitialView; }