none
DatePicker ne met pas sa donnée à jour RRS feed

  • Question

  • Bonsoir à tous, j'ai un souci avec la DatePicker. J'arrive pas sauvegarder la date entrée par l'utilisateur après avoir selectionné le control DatePicker.

    voici mon code

    dans la partie propriétés de mon MainPage.

    public DatePicker MaDatePicker = new DatePicker();

    Methodes de Mon MainPage.

                                                     

     if (ListeFinale[Enumerateur].DataTypeToBeEntered == "DATE")
                {

                        MaDatePicker.Focus();
                        MaDatePicker.Loaded += new RoutedEventHandler(MaDatePicker_Loaded);

                        MaDatePicker.ValueChanged += new EventHandler<DateTimeValueChangedEventArgs>(MaDatePicker_ValueChanged);
                        ContentPanel.Children.Add(MaTextblock);
                        ContentPanel.Children.Add(MaDatePicker);


                }

        

       void MaDatePicker_ValueChanged(object sender, DateTimeValueChangedEventArgs e)
            {
                ListeFinale[Enumerateur].DataEnteredByUser = MaDatePicker.Value.ToString();
            }


            void MaDatePicker_Loaded(object sender, RoutedEventArgs e)
            {
                if (ListeFinale[Enumerateur].DataEnteredByUser == null)
                {
                    int year = DateTime.Now.Year;
                    int mounths = DateTime.Now.Month;
                    int day = DateTime.Now.Day;

                    MaDatePicker.Value = new DateTime(year, mounths, day);
                }
                else
                {

                    MaDatePicker.Value = Convert.ToDateTime(ListeFinale[Enumerateur].DataEnteredByUser);
                }
            }

    Le controle s'affiche bien , je clique dessus pour modifier la date dans la liste deroulante mais à mon retour rien à changer.

    merci pour votre aide.


    windows phone 7

    lundi 29 juillet 2013 01:12

Réponses

  • Quand une date est sélectionnée dans le datepicker, l'appli retourne à l'écran qui l'a initialisé (équivalent d'un back)

    Les événements loaded sont donc appelés

    il faut alors éviter une double initialisation en vérifiant la propriété NavigationMode de l'événement NavigationTo.


    Vincent Guigui Innovative Technologies Expert at OCTO Technology MVP Kinect

    • Marqué comme réponse phorekonan lundi 29 juillet 2013 22:58
    lundi 29 juillet 2013 06:11