vb.net Update Gridview Aucune Valeur Récupérée
Gridview, Update.
Bonjour,
Je vous expose mon problème,
J'utilise Gridview et je voudrais faire un Update avec "DeleteCommande", le soucis c'est que je ne récupère rien dans mes variables "Doc_Libelle" et "Doc_Ref" et j'ai cette erreur "Impossible d'insérer la valeur NULL dans la colonne 'Doc_Libelle'" lorsque je veux mettre à jour les champs pré-remplis de la base de donnée.
Merci d'avance pour votre aide :P
Mon code:
Code:
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
| <asp:GridView ID="GridView1" runat="server" AllowPaging="True"
AllowSorting="True" AutoGenerateColumns="False" CellPadding="4"
DataSourceID="SqlDataSource1" ForeColor="#333333" GridLines="None"
DataKeyNames="Doc_ID" ShowFooter="True">
<AlternatingRowStyle BackColor="White" ForeColor="#284775" />
<Columns>
<asp:CommandField ShowDeleteButton="True" ShowEditButton="True"/>
<asp:TemplateField HeaderText="ID" SortExpression="Doc_ID">
<EditItemTemplate>
<asp:Label ID="Label0" runat="server" Text='<%# Eval("Doc_ID") %>'></asp:Label>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label0" runat="server" Text='<%# Bind("Doc_ID") %>'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:LinkButton ID="btnInsert" OnClick="lbInsert_Click" ValidationGroup="INSERT" runat="server">LinkButton</asp:LinkButton>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="LIBELLE" SortExpression="Doc_Libelle">
<EditItemTemplate>
<asp:TextBox ID="TxtLib" runat="server" Text='<%# Eval("Doc_Libelle") %>'></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator_Lib" runat="server" ControlToValidate="TxtLib" Text="*" ErrorMessage="Un libellé est requis" ForeColor="Red"></asp:RequiredFieldValidator>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="TxtLib" runat="server" Text='<%# Bind("Doc_Libelle") %>'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox ID="InsertLib" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator_InstLib" ValidationGroup="INSERT" runat="server" ControlToValidate="InsertLib" Text="*" ErrorMessage="Insérer un libellé" ForeColor="Red"></asp:RequiredFieldValidator>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Référence" SortExpression="Doc_Ref">
<EditItemTemplate>
<asp:TextBox ID="TxtRef" runat="server" Text='<%# Eval("Doc_Ref") %>'></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator_Ref" runat="server" ControlToValidate="TxtRef" Text="*" ErrorMessage="Une référence est requise" ForeColor="Red"></asp:RequiredFieldValidator>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="TxtRef" runat="server" Text='<%# Bind("Doc_Ref") %>'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox ID="InsertRef" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator_InstRef" ValidationGroup="INSERT" runat="server" ControlToValidate="InsertRef" Text="*" ErrorMessage="Insérer une référence" ForeColor="Red"></asp:RequiredFieldValidator>
</FooterTemplate>
</asp:TemplateField>
</Columns>
<EditRowStyle BackColor="#999999" />
<FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
<HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
<RowStyle BackColor="#F7F6F3" ForeColor="#333333" />
<SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />
<SortedAscendingCellStyle BackColor="#E9E7E2" />
<SortedAscendingHeaderStyle BackColor="#506C8C" />
<SortedDescendingCellStyle BackColor="#FFFDF8" />
<SortedDescendingHeaderStyle BackColor="#6F8DAE" />
</asp:GridView>
<asp:ValidationSummary ID="ValidationSummary1" ValidationGroup="INSERT" runat="server" ForeColor="Red" />
<asp:ValidationSummary ID="ValidationSummary2" runat="server" ForeColor="Red" />
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:bdd %>"
UpdateCommand="UPDATE [Document] SET [Doc_Libelle] = @Doc_Libelle , [Doc_Ref] = @Doc_Libelle WHERE [Doc_ID] = @Doc_ID"
SelectCommand="SELECT * FROM [Document]"
<UpdateParameters>
<asp:Parameter Name="Doc_Libelle" Type="String" />
<asp:Parameter Name="Doc_Ref" Type="String" />
<asp:Parameter Name="Doc_ID" Type="INT32" />
</UpdateParameters>
</asp:SqlDataSource> |
Gridview VB.net Bind Eval
J'ai résolu mon problème hihi, 2 heures que je cherche, j'expose mon problème, et je trouve dans la minute qui suit la solution. Il fallait juste inverser Bind par Eval, et Eval par Bind.
Code:
1 2 3 4 5 6
| <EditItemTemplate>
<asp:Label ID="Label0" runat="server" Text='<%# Eval("Doc_ID") %>'></asp:Label>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label0" runat="server" Text='<%# Bind("Doc_ID") %>'></asp:Label>
</ItemTemplate> |
Merci pour le Forum :P