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


 
     
    