Здесь у меня есть asp:DropDownList
в моем asp:GridView
, чтобы помочь пользователю загрузить данные в SQL Server 2012
.Как добавить динамический динамический список?
<asp:TemplateField ItemStyle-Width = "100px" HeaderText = "Site">
<ItemTemplate>
<asp:Label ID="lblSiteID" runat="server" Text='<%# Eval("SiteID")%>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:DropDownList ID="ddlSite" SelectedValue='<%# Bind("SiteID") %>' Text='<%# Bind("SiteID") %>' runat="server">
<asp:ListItem Value= "1" Text="Google" />
<asp:ListItem Value= "2" Text="Yahoo" />
</asp:DropDownList>
</EditItemTemplate>
<FooterTemplate>
<asp:DropDownList ID="ddlSite" runat="server">
<asp:ListItem>Google</asp:ListItem>
<asp:ListItem>Yahoo</asp:ListItem>
</asp:DropDownList>
</FooterTemplate>
<ItemStyle Width="100px" />
</asp:TemplateField>
SiteID
является ИНТ в базе данных здесь, как это определено в коде:
private int numGoogle = 1;
private int numYahoo = 2;
//on insert and update
string SiteID = ((DropDownList)gvMainView.FooterRow.FindControl("ddlSite")).Text;
switch (SiteID)
{
case "Inpatient Measures":
SiteID = numGoogle.ToString();
break;
case "Outpatient Measures":
SiteID = numYahoo.ToString();
break;
}
//on Edit
switch (SiteID)
{
string SiteID = ((DropDownList)gvMainView.FooterRow.FindControl("ddlSite")).SelectedValue;
case "1":
SiteID = "Google";
break;
case "2":
SiteID = "Yahoo";
break;
}
Моя цель состоит в том, чтобы сделать это приложение полностью динамический, так что клиент может добавить value
и текст непосредственно на asp:dropdownlist
. У меня уже есть таблица, созданная для этого в моей базе данных. Я знаю, как запросить базу данных, чтобы получить num
и SiteName
, и использовать их как value
и text
. Мне нужно знать, как мне заняться заполнением asp:DropDownList
, как только я их получу, чтобы переменные не были жестко закодированы, как сейчас.
Если я не ошибаюсь, чем вы просто хотите, чтобы связать ваш выпадающий список динамически из базы данных? –