Получение предварительно выбранного текста в раскрывающемся списке в окне сетки EditItemTemplate
Я не могу получить предварительно выбранный текст в раскрывающемся списке в шаблоне редактирования. Пожалуйста, смотрите мой код:
<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;
}
}
}
Может кто-нибудь сказать мне, что я должен сделать, чтобы получить предварительно выбранный выпадающий список?
С уважением Хуссейн
1 ответ
Решение
Прямо сейчас вы заполняете DropDownList
с вариантами из источника данных. Однако вы не привязываете выбранное значение ни к чему.
Что бы вы ни делали, чтобы связать другие поля в вашем Gridview
сделай это для DropDownList
Выбранное значение также.
Не видя остальной части вашего GridView
Разметка, я думаю, что-то вроде этого должно работать:
<EditItemTemplate>
<asp:DropDownList ID="droplist" runat="server"
SelectedValue='<%# Bind("UnitID") %>' >
</asp:DropDownList>
</EditItemTemplate>
Где "UnitID" выше - это имя поля из источника данных вашего GridView, которое вы хотите привязать к SelectedValue DropDownList.