だから私は以下に示すようにこのグリッドビューを持っています:
<asp:GridView ID="gridDetaljiNarudzbe" AutoGenerateColumns="false" AllowPaging="true" PageSize="10" runat="server" OnRowCommand="gridDetaljiNarudzbe_RowCommand" OnPageIndexChanging="gridDetaljiNarudzbe_PageIndexChanging" OnRowDataBound="gridDetaljiNarudzbe_RowDataBound">
<Columns>
<asp:BoundField DataField="Naziv" HeaderText="Naziv" />
<asp:BoundField DataField="Sifra" HeaderText="Šifra" />
<asp:BoundField DataField="Cijena" HeaderText="Cijena" />
<asp:BoundField DataField="Kolicina" HeaderText="Količina" />
<asp:TemplateField HeaderText="Ocjena">
<ItemTemplate>
<asp:DropDownList ID="DropDownList1" runat="server"></asp:DropDownList>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<asp:LinkButton ID="btnOcijeni" title="Ocijeni proizvod" CommandName="OcijeniCommand" CommandArgument='<%# Eval("ProizvodID") %>' runat="server"><img src="../images/ocijeni.png" /></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
このドロップダウン リストにアクセスしてデータを入力する方法はあるのでしょうか。次のコードを試しましたが、どれも機能せず、すべて「オブジェクト参照がインスタンスに設定されていません」というエラーが返されました。
DropDownList drop = gridDetaljiNarudzbe.FindControl("DropDownList1") as DropDownList;
次に、次のことを行います。drop.Items.Add(new ListItem("test"));
RowDataBound イベントも試しましたが、うまくいきませんでした...
DropDownList droplist = e.Row.FindControl("DropDownList1") as DropDownList;
次に、グリッドが機能するかどうかをテストするために、次のコードをグリッドに入力します。
drop.Items.Add(new ListItem("test"));
しかし、これらのどれも機能しませんでした...このドロップダウンから値を取得し、誰かがそこから何かを拾ったときにそれをDBに挿入する方法も知りたいです。誰かがこれで私を助けてくれますか?