Bonjour,
j'ai un gridView de 6 colonnes : la 2e est un CommandField qui sert à modifier les 3 dernières colonnes qui sont des TemplateField qui affiche des descriptions(en mode normal) et un TextBox(en mode Modifiable), puis la 3e est une colonne de TemplateField avec un CheckBox à l'intérieur.
Mon problème est que la colonne de cases à cocher qui ne se réinitialisent pas après d'exécution des événements CancelEdit ou RowUpdate.
Voici mon code des colonnes 2, 3 et 4 :
Voici mon Page_Load et RowCancelEdit :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 <asp:CommandField ButtonType="Image" EditImageUrl="~/NET/Images/Edit.png" ShowEditButton="true" CancelImageUrl="~/NET/Images/inactive.png" UpdateImageUrl="~/NET/Images/save.png" /> <asp:TemplateField HeaderText="Actif"> <ItemTemplate> <asp:CheckBox ID="ux_ChoixActif" runat="server" CssClass="Text8n" AutoPostBack="true" OnCheckedChanged="ux_ChoixActif_CheckedChanged" /> </ItemTemplate> </asp:TemplateField> <asp:TemplateField SortExpression="description" HeaderText="Description"> <EditItemTemplate> <asp:TextBox ID="txtDesc" Runat="server" CssClass="Text8n" Columns="22" MaxLength="50" Text='<%# Bind("description") %>' /> </EditItemTemplate> <ItemTemplate> <%#Eval("description")%> </ItemTemplate> </asp:TemplateField>
*InitChk() sert à réinitialiser les valeurs des CheckBox
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 protected void Page_Load(object sender, EventArgs e) { InitConnection((string)Session["Site"]); myConnectionString = myConn.ConnectionString; string mySQL = RetourneRequete("listeTablesBPCS"); ux_SqlDataSourceListeTables.ConnectionString = myConnectionString; ux_SqlDataSourceListeTables.SelectCommand = mySQL; if (!IsPostBack) InitChk(); } protected void ux_GridViewListeTables_RowEdit(object sender, GridViewEditEventArgs e) { ux_GridViewListeTables.Columns[2].Visible = false; } protected void ux_GridViewListeTables_RowCancelEdit(object sender, GridViewCancelEditEventArgs e) { ux_GridViewListeTables.Columns[2].Visible = true; InitChk(); }
Merci d'avance
Partager