Bonjour,

j'ai créé un tableau pour pouvoir insérer des valeurs dedans. Les lignes représentent un numéro de tache (récupérer grace à la base de donnée) et jaimerais que les colonnes correspondent à une date.

Pour insérer mes valeurs, dans chaque cellulle du tableau, il y a une textbox et son ID qui est construit comme cela : ID_Numérodelatache_Date. Numérodelatache représente donc la ligne, mais je ne sais pas comment mettre la date. Voila mon code et une image.

ce code se trouve dans la méthode qui se déclenche quand la droplist des projets est changé (voir l'image)

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
TableRow ligne_jour = new TableRow();
        for (int i = 0; i < 8; i++) //1er ligne
        {
            TableCell cellule = new TableCell();
            Label jour = new Label();
            string légende = " Taches/Jour"; ;
             //je créé ma premiere ligne en dur
            switch (i) 
            {
                case 1: légende = "lundi"; break;
                case 2: légende = "mardi"; break;
                case 3: légende = "mercredi"; break;
                case 4: légende = "jeudi"; break;
                case 5: légende = "vendredi"; break;
                case 6: légende = "samedi"; break;
                case 7: légende = "dimanche"; break;
 
            }
            jour.Text = légende;
            jour.Font.Bold = true;
            cellule.Controls.Add(jour);
            cellule.HorizontalAlign = HorizontalAlign.Center;
 
            ligne_jour.Cells.Add(cellule);
        }
        tableau.Rows.Add(ligne_jour)
 
       //suite du code ou je récupere des donnée (non affiché)
 
while (sqlDR.Read())
        {
            TableRow ligne_tache = new TableRow(); //crée une ligne
            TableCell cellule = new TableCell(); //crée une cellule
            Label tache = new Label(); //un label
            string légende = sqlDR.GetString(sqlDR.GetOrdinal("L_Tache")); //texte de la tache
            tache.Text = légende;
            tache.Font.Bold = true;
            cellule.Controls.Add(tache); //ajout du label à la cellule
            ligne_tache.Cells.Add(cellule); //ajout de la cellule dans la ligne  
 
            for (int i = 1; i <= 7; i++) //les 7textbox d'insertion
            {
                TableCell CelTextBox = new TableCell();
                TextBox textbox = new TextBox();
 
                //ID unique de la textbox : ID_NumTache_NumColonne
                textbox.ID = "ID_" + sqlDR.GetValue(sqlDR.GetOrdinal("N_Tache")).ToString() + "-" + i.ToString();
                textbox.Width = 60;
 
//une seule méthode pour toute les textbox lorsque le contenu est changé
                textbox.TextChanged += new EventHandler(this.MyTextChanged);
 
            //...etc...
Voici une image de ce que le code réalise image

J'aimerais que l'orsque l'utilisateur clic sur un jour dans le calendrier, cela affiche la semaine dans le tableau. Que lundi représente la date 04/06/07 par exemple mais je ne sais pas du tout comment faire

Ainsi dans l'ID de la textbox, j'aurais la date. Par exemple : ID_18_04/06/07 (18 représentant le numéro de la tache)

Merci de votre aide