Calender + TextBox

abrim Messages postés 16 Date d'inscription lundi 27 avril 2009 Statut Membre Dernière intervention 2 juin 2011 - 26 avril 2011 à 12:54
pl4hs Messages postés 53 Date d'inscription dimanche 17 janvier 2010 Statut Membre Dernière intervention 26 avril 2011 - 26 avril 2011 à 22:17
Bonjour tout le monde ,
Je débute avec c# et je veux créer dynamiquement une zone de texte et un calendrier dont la date sélectionnée sera affiché dans la zone de texte , voici mon les deux fonctions que je les fait :
  public double calender_margin;
        public double calender_left;
        public void MyBouton_Click(object sender, EventArgs e)
        {
            Calendar date = new Calendar();
            date.Margin = new Thickness(calender_margin);
            date.SetValue(Canvas.LeftProperty, calender_left);
            //m.Text = date.SelectedDate.ToString();
            LayoutRoot.Children.Add(date);
            date.Visibility = Visibility.Visible;
            date.SelectedDatesChanged+=new EventHandler<SelectionChangedEventArgs>(date_SelectedDatesChanged);
        }

        public double CalenderTextBoxMargin;
        public double CalenderTextBoxLeft;
        public void date_SelectedDatesChanged(object sender,EventArgs e)
        {
            
            TextBox MyText_2 = new TextBox();
            MyText_2.Margin = new Thickness(CalenderTextBoxMargin);
            MyText_2.Height = 20;
            MyText_2.Width = 300;
            MyText_2.SetValue(Canvas.LeftProperty, CalenderTextBoxLeft);
            MyText_2.Text = date.SelectedDate.ToShortDateString();
            LayoutRoot.Children.Add(MyText_2);

        }


Le problème c'est que dans la fonction date_SelectedDatesChanged date n'est pas connu
SVP aidez moi je serais trop reconnaissante je suis vraiment bloquée

3 réponses

cs_jopop Messages postés 1540 Date d'inscription lundi 26 mai 2003 Statut Membre Dernière intervention 1 août 2013 12
26 avril 2011 à 14:42
Salut,

J'ai bien un contrôle Calendar en Web, mais il n'a pas les attributs et méthodes que tu utilises. Et en Win j'ai un DateTimePicker mais pas de Calendar.

Contexte à part, voilà ton souci : tu essaies d'atteindre une instance hors de portée. En effet date n'est visible que dans ton event du bouton (il y est déclaré), or tu essaie d'y accéder depuis ton autre event. Deux solutions s'offrent alors à toi :
- tu déclares ton date au niveau de la classe (c'est pas le plus propre),
- tu utilises le paramètre sender de ton event pour atteindre ton instance de Calendar, en faisant comac :
Calendar date = (Calendar)sender;


Bon code
0
pl4hs Messages postés 53 Date d'inscription dimanche 17 janvier 2010 Statut Membre Dernière intervention 26 avril 2011
26 avril 2011 à 22:15
slt a toi,
je vien de le faire est sa atrés bien marcher..ou jai mal compris la question..mettre la valeur dute dateTime dans la text box au changement de valeur du datetime..?
       
 private void dateTimePicker1_ValueChanged(object sender, EventArgs e)
 {
    textBox1.Text = dateTimePicker1.Value.ToString();
}


Cordialement
Achieve your Vision == Real-time
0
pl4hs Messages postés 53 Date d'inscription dimanche 17 janvier 2010 Statut Membre Dernière intervention 26 avril 2011
26 avril 2011 à 22:17
PS: en partant du principe que tes composant créer dynamiquement marchent..
0
Rejoignez-nous