Example #1
0
        /// <summary>
        ///     Occurs on save element state.
        /// </summary>
        public virtual void OnSaveState(FrameworkElement element, IDictionary <string, object> state, object args,
                                        IDataContext context = null)
        {
            Should.NotBeNull(element, "element");
            Should.NotBeNull(state, "state");
            var viewModel = element.DataContext as IViewModel;

            if (viewModel != null)
            {
                state[VmStateKey] = new LazySerializableContainer(_serializer,
                                                                  _viewModelProvider.PreserveViewModel(viewModel, context ?? DataContext.Empty), viewModel);
            }
        }
 /// <summary>
 ///     Preserves the view model.
 /// </summary>
 protected virtual void PreserveViewModel([NotNull] IViewModel viewModel, [NotNull] FrameworkElement element,
      [NotNull] IDictionary<string, object> state, [NotNull] object args, [NotNull] IDataContext context)
 {
     state[VmStateKey] = new LazySerializableContainer(_serializer, _viewModelProvider.PreserveViewModel(viewModel, context), viewModel);
 }
Example #3
0
 protected virtual void PreserveViewModel([NotNull] IViewModel viewModel, [NotNull] FrameworkElement element,
                                          [NotNull] IDictionary <string, object> state, [NotNull] object args, [NotNull] IDataContext context)
 {
     state[VmStateKey] = new LazySerializableContainer(_serializer, _viewModelProvider.PreserveViewModel(viewModel, context));
 }