Если я хочу заполнить DropdownList
в GridView
, что будет лучшим способом? использовать GridView
'OnRowDataBound
'событие и выборка запроса каждый раз в db или сначала получить все данные и наложить его на datatable и продолжить работу с этим datatable?метод заселения выпадающего списка внутри gridview
0
A
ответ
0
Как ваш вопрос неясно о ваших требованиях, я предполагаю, что вы хотите связать dropdownlist
внутри Gridview
с использованием OnRowDataBound
события gridview.
Так вот шаги: -
- Добавить Gridview HTML на странице ASPX с
DropDownList
вItemTemplate
изTemplateField
.
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false" OnRowDataBound="OnRowDataBound">
<Columns>
<asp:BoundField HeaderText="Name" DataField="ContactName" />
<asp:TemplateField HeaderText = "Country">
<ItemTemplate>
<asp:Label ID="lblCountry" runat="server" Text='<%# Eval("Country") %>' Visible = "false" />
<asp:DropDownList ID="ddlCountries" runat="server">
</asp:DropDownList>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
Затем вам нужно связать gridview
с записями, которые поступают из базы данных.
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
GridView1.DataSource = GetData("SELECT ContactName, Country FROM Customers");
GridView1.DataBind();
}
}
private DataSet GetData(string query)
{
string conString = ConfigurationManager.ConnectionStrings["constr"].ConnectionString;
SqlCommand cmd = new SqlCommand(query);
using (SqlConnection con = new SqlConnection(conString))
{
using (SqlDataAdapter sda = new SqlDataAdapter())
{
cmd.Connection = con;
sda.SelectCommand = cmd;
using (DataSet ds = new DataSet())
{
sda.Fill(ds);
return ds;
}
}
}
}
Тогда код OnRowDataBound
будет следовать, как показано ниже: -
protected void OnRowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
//Find the DropDownList in the Row
DropDownList ddlCountries = (e.Row.FindControl("ddlCountries") as DropDownList);
ddlCountries.DataSource = GetData("SELECT DISTINCT Country FROM Customers");
ddlCountries.DataTextField = "Country";
ddlCountries.DataValueField = "Country";
ddlCountries.DataBind();
//Add Default Item in the DropDownList
ddlCountries.Items.Insert(0, new ListItem("Please select"));
//Select the Country of Customer in DropDownList
string country = (e.Row.FindControl("lblCountry") as Label).Text;
ddlCountries.Items.FindByValue(country).Selected = true;
}
}
Смотрите Reference link для справки
см также Working demo для справки
Надежда, что помогает.
Смежные вопросы
- 1. Java Spring выпадающего заселения
- 2. Связывание выпадающего списка внутри gridview edititemtemplate
- 3. Чтобы получить идентификатор выпадающего списка внутри gridview
- 4. GridView при изменении выпадающего списка списка
- 5. Получение выбранного значения из выпадающего списка внутри GridView при обновлении
- 6. Отключение выпадающего списка внутри gridview на основе значения, выбранного в другом раскрывающемся списке внутри gridview
- 7. GridView обновление строки и выпадающего списка
- 8. Как обновить GridView в onSelectedIndexChanged() выпадающего списка?
- 9. Добавление выпадающего списка в столбцы gridview
- 10. Отфильтруйте gridview на основе выпадающего списка ID. [Outside Gridview]
- 11. Связывание списка внутри списка с GridView
- 12. как я могу заполнить Gridview выпадающего списка определяемого пользователя объект
- 13. jquery using .load метод для выпадающего списка
- 14. заселения выпадающего меню из XML-файла с помощью C#
- 15. Задать значение выпадающего списка внутри ng-repeat
- 16. Установленное значение выпадающего списка внутри ретранслятора
- 17. Как создать checkbox внутри выпадающего списка?
- 18. Заполнение каскадного выпадающего списка внутри репитера
- 19. Получение повторяющихся значений внутри выпадающего списка
- 20. Модальный внутри выпадающего списка не работает
- 21. Как добавить div внутри выпадающего списка
- 22. Вызов кнопки или выпадающего списка внутри ретранслятора
- 23. Добавление текстового поля внутри выпадающего списка
- 24. Как проглотить поведение выпадающего списка внутри Expander.Header?
- 25. Как укладывать кнопки внутри осины выпадающего списка
- 26. Как использовать значение выпадающего списка внутри $ .getJSON?
- 27. Bootstrap Modal не работает внутри выпадающего списка
- 28. Twitter bootstrap modal внутри выпадающего списка
- 29. Использование выпадающего списка вырезки twitter внутри значка
- 30. Gridview pagination не работает, когда gridview создается динамически по списку списка выпадающего списка
что вы думаете ?, где вы застряли. ? – BNN