protected override void OnNavigatedTo(NavigationEventArgs e)
        {
            base.OnNavigatedTo(e);

            this.GeoLocationControlPicker.OnRequestLocationServicesEnabled += new EventHandler(GeoLocationControlPicker_OnRequestLocationServicesEnabled);
            this.GeoLocationControlPicker.IsLocationServicesEnabledByUser = SettingsHelper.IsLocationServicesEnabled();

            if (NavigationContext.QueryString.ContainsKey("id"))
            {
                string idQueryString = NavigationContext.QueryString["id"];
                int id = 0;
                if (!Int32.TryParse(idQueryString, out id))
                {
                    throw new ArgumentException("id is not valid value!");
                }

                ToDoItemEditViewModel viewModel = new ToDoItemEditViewModel(new ToDoItemRepository());
                this.DataContext = viewModel;
                viewModel.Load(id);
                this.GeoLocationControlPicker.SetProperties(viewModel.ToDoItem.LocationAddress,
                                                            viewModel.ToDoItem.LocationLatitude,
                                                            viewModel.ToDoItem.LocationLongitude);
                return;
            }
            else
            {
                ToDoItemEditViewModel viewModel = new ToDoItemEditViewModel(new ToDoItemRepository());
                this.DataContext = viewModel;
                viewModel.CreateNew();
            }
        }
 public static void CreateToDoEditViewModel()
 {
     ToDoItemEditViewModel toDoItemEditViewModel = GetNewToDoItemEditViewModel();
     _toDoItemEditViewModel = toDoItemEditViewModel;
 }
 private static ToDoItemEditViewModel GetNewToDoItemEditViewModel()
 {
     ToDoItemEditViewModel toDoItemEditViewModel = null;
     if (DesignerProperties.IsInDesignTool)
     {
         toDoItemEditViewModel = new ToDoItemEditViewModel(new DesignToDoItemRepository(), 4);
     }
     else
     {
         toDoItemEditViewModel = new ToDoItemEditViewModel(new ToDoItemRepository());
     }
     return toDoItemEditViewModel;
 }
 public static void ClearToDoEditViewModel()
 {
     _toDoItemEditViewModel.Cleanup();
     _toDoItemEditViewModel = null;
 }