1

編集テンプレートのドロップダウンで事前に選択されたテキストを取得できません。私のコードを見てください:

<EditItemTemplate>
   <asp:DropDownList ID="droplist" runat="server">
   </asp:DropDownList>
</EditItemTemplate>

c# コード

protected void gvDetails_RowDataBound(object sender, GridViewRowEventArgs e)
{
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            if ((e.Row.RowState & DataControlRowState.Edit) > 0)
            {
                DropDownList droplist = (DropDownList)e.Row.FindControl("droplist");
                droplist.DataSource = EquipmentBLL.getunitdrop();
                droplist.DataTextField = "UnitName";
                droplist.DataValueField = "UnitID";
                droplist.DataBind();
                droplist.Items.Insert(0, new ListItem(" Select Unit ", "0"));
                //droplist.Items.FindByText(unittypetext).Selected = true;
            }
        }
}

事前に選択されたドロップダウンを取得するにはどうすればよいか教えてもらえますか?

よろしくフセイン

4

1 に答える 1

0

現在、DropDownListデータソースから with オプションを設定しています。ただし、選択した値を何にもバインドしていません。

の他のフィールドをバインドするために行っていることは何でも、GridviewDropDownListSelectedValue に対しても同様に行います。

残りのGridViewマークアップを見なくても、次のようなことがうまくいくと思います。

<EditItemTemplate>
   <asp:DropDownList ID="droplist" runat="server" 
        SelectedValue='<%# Bind("UnitID") %>' >
   </asp:DropDownList>
</EditItemTemplate>

上記の "UnitID" は、DropDownList の SelectedValue にバインドする GridView のデータソースからのフィールドの名前です。

于 2013-07-01T14:19:59.523 に答える