Я предлагаю вам использовать Template Field
в GridView, и вы можете поместить свой drop-down List
как:
<asp:TemplateField HeaderText="Year">
<ItemTemplate>
<asp:DropDownList Width="50" runat="server"
id="ddlYear" AutoPostBack="true"
OnSelectedIndexChanged="ddlYear_SelectedIndexChanged">
</asp:DropDownList>
Затем на RowDataBound
добавить элементы в раскрывающийся список или связать его с некоторым источником данных..
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
//Finding the Dropdown control in the row.
DropDownList ddlYear= e.Row.FindControl("ddlYear");
if (ddlYear!= null)
{
ddlYear.DataTextField = "Name";
ddlYear.DataValueField = "YearID";
ddlYear.DataSource = ds.Tables["years"];
ddlYear.DataBind();
}
}
}
Вы также можете перейти по указанной ссылке @ Madhu ..
Поскольку вы делаете это, не рекомендуется добавлять выпадающий список динамически в RowDataBound
.. на каждом * 1013.* это событие будет воссоздавать эти выпадающие снова.