Bonjour
je travail avec visual studio et IIS en local
j ai crée un datagrid ( remplie avec des boutons ) que j ai uniquement liée a une table d' 1 dimension
je gere la datagrid grace a du code , et elle marche tres bien dans un webpage normale .
le probléme c'est que j ai crée un tabstrip , j ai intégré ma datagrid a l interieur ( copier coller du code ) , ainsi ke des fonctions , mais quand je modifie la valeur de la table , tout marche tres bien ( ca change de couleur quand on click sur un bouton )
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72 <ie:TabStrip targetid="multipage" id="ts1" runat="server" TabDefaultStyle="color:#aaaaaa;background-color:#EEEEEE;border-color:#AAAAAA;border-width:1px;border-style:Solid;font-weight:bold;font-family:Verdana;font-size:11px;height:21;width:79;text-align:center;" TabHoverStyle="color:blue" TabSelectedStyle="color:#000000;background-color:#FFFFFF;border-bottom:none" SepDefaultStyle="background-color:#FFFFFF;border-color:#AAAAAA;border-width:1px;border-style:solid;border-top:none;border-left:none;border-right:none" Height="38px"> </ie:TabStrip> <ie:Tab Text="Planning" /> <ie:TabSeparator /> <asp:datagrid id="MonDatagrid" style="Z-INDEX: 111; LEFT: 319px; POSITION: absolute; TOP: 119px" runat="server" Width="273" Height="41" BorderStyle="None" BorderColor="Black" CellPadding="0" BorderWidth="1px" AutoGenerateColumns="False"> <ie:MultiPage id="multipage" runat="server" style="Z-INDEX: 101; LEFT: 17px; POSITION: absolute; TOP: 63px" Height="600px" Width="800px"> <ie:pageview> <Columns> <asp:TemplateColumn HeaderText="8H00"> <ItemTemplate> <asp:Button ToolTip='<%# DataBinder.Eval(Container.DataItem, "8H00") %>' Text="" onclick="on_click_dtButton" Width="100%" Height="100%" id="BtnHor01" runat="server" BorderStyle="None" ForeColor="#404040" BackColor='<%# setcolor("BtnHor01",DataBinder.Eval(Container.DataItem, "8H00"))%>' > </asp:Button> </ItemTemplate> </asp:TemplateColumn> </asp:TemplateColumn> </ie:pageview> </ie:MultiPage> 'code behin : Public Sub on_click_dtButton(ByVal sender As System.Object, ByVal e As System.EventArgs) Dim buttonclicked As WebControls.Button = CType(sender, WebControls.Button) Dim coll, line As Integer coll = col(buttonclicked.ID) line = ligne(buttonclicked.ToolTip.ToString) If Mycolortable.Rows(line).Item(coll) = "0" Then Mycolortable.Rows(line).Item(coll) = DrpDnLstChxAct.Items(DrpDnLstChxAct.SelectedIndex).Value Else Mycolortable.Rows(line).Item(coll) = "0" End If MonDatagrid.DataSource = Mytable MonDatagrid.DataBind() 'c'est le seul moyen que j ai trouvé de rafraichir la datagrid End Sub Public Function setcolor(ByVal id_btn As String, ByVal tooltip As String) As System.Drawing.Color Dim color As System.Drawing.Color Dim line, coll As Integer coll = col(id_btn) 'retourne le numéro de colonee suivant l id du bouton ( bidouillage ) line = ligne(tooltip) ' retourne la ligne suivant la valeur de tooltip 'mytable liée a la datagrid a une correspondance avec Mycolortable de meme dimension qui a comme valeur un chiffre indiquant la couleur de la case et ke je modifie If Mycolortable.Rows(line).Item(coll) = "0" Then color = System.Drawing.Color.Yellow End If If Mycolortable.Rows(line).Item(coll) = "1" Then color = System.Drawing.Color.Black End If If Mycolortable.Rows(line).Item(coll) = "2" Then color = System.Drawing.Color.Green End If If Mycolortable.Rows(line).Item(coll) = "3" Then color = System.Drawing.Color.Blue End If Return color End Function
le probleme , c'est que maintenant quand je click sur un bouton de la datagrid , tous les boutons prennent comme valeur texte "soumettre la requete" , est ce un bug ?
voila si vous avez des idées ( moi je séche ) ou des conseils sur ma méthode de devellopement ( j ai dévellopé les pages de mon tabstrip séparément et j ai copié/collé le code ( en tout cas l interface pour l'instant )
Partager