I have a GridView to display my products and i have also made EditButton and DeleteButton to Update and Delete my products in the GridView. When I click on EditButton my gridview have a DropDownList to display my ProductType but i get an error with this message:
object reference not set to an instance of an object
This picture will show where i get that error:
And this is my method i use to fill datasource for my DropDownList:
Thank you for your help!
<asp:GridView ID="gridviewSanPham" runat="server" DataKeyNames="ID" AllowPaging="True" PageSize="4" AutoGenerateColumns="False" OnPageIndexChanging="gridviewSanPham_PageIndexChanging" OnRowCancelingEdit="gridviewSanPham_RowCancelingEdit" OnRowDeleting="gridviewSanPham_RowDeleting" OnRowEditing="gridviewSanPham_RowEditing" OnRowUpdating="gridviewSanPham_RowUpdating" OnRowDataBound="gridviewSanPham_RowDataBound">
<Columns>
<asp:CommandField ButtonType="Button" ShowEditButton="true" ShowCancelButton="true" />
<asp:CommandField ButtonType="Button" ShowDeleteButton="true" ShowCancelButton="true" />
<asp:BoundField DataField="ID" HeaderText="Mã sản phẩm" ReadOnly="true"/>
<asp:TemplateField HeaderText="Mã Loại">
<ItemTemplate>
<%# Eval("TypeID") %>
</ItemTemplate>
<EditItemTemplate>
<asp:Label runat="server" ID="lblTypeID" Text='<%# Eval("TypeID") %>'></asp:Label>
<asp:DropDownList runat="server" ID="cboTypeID" ></asp:DropDownList>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Tên SP">
<ItemTemplate>
<%# Eval("Name") %>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox runat="server" ID="txtName" Text='<%# Eval("Name") %>'></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Giá">
<ItemTemplate>
<%# Eval("Price") %>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox runat="server" ID="txtPrice" Text='<%# Eval("Price") %>'></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Mô tả">
<ItemTemplate>
<%# Eval("Description") %>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox runat="server" ID="txtDescription" Text='<%# Eval("Description") %>'></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Hình">
<ItemTemplate>
<%# Eval("Image") %>
</ItemTemplate>
<EditItemTemplate>
<asp:Label runat="server" ID="lblImage" Text='<%# Eval("Image") %>'></asp:Label>
<asp:FileUpload runat="server" ID="uploadImage" />
</EditItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
That is my aspx code