我们有一个ASP.Net / VB.Net Web表单,其中包含aspx文件标记中的下拉列表。还有一个使用DataSet设计器创建的DataSet。
我们希望使用DataSet中的数据填充下拉列表。
您能否向我展示一些使用DataSet数据填充下拉列表所需的示例标记和/或VB.Net编码?
答案 0 :(得分:6)
<asp:DropDownList ID="MyDropDownList" runat="server" DataTextField="SomeString" DataValueField="SomeUniqueId" />
代码隐藏:
protected void Page_Load(object sender, EventArgs e)
{
var myDataSet = new DataSet(); // replace with your dataset
MyDropDownList.DataSource = myDataSet;
MyDropDownList.DataBind();
}
VB.Net:
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
Dim aDataSet As DataSet
MyDropDownList.DataSource = aDataSet
MyDropDownList.DataBind()
End Sub
你在标记中看到“DataTextField”和“DataValueField”吗?您可以在其中放置要用作id(数据值)的字段名称,并在下拉列表中显示(数据文本)。
以下是一个例子:
<body>
<form id="form1" runat="server">
<div>
Fruits
<asp:DropDownList ID="DropDownListWithFruits" runat="server" DataTextField="FruitName" DataValueField="FruitId" />
</div>
</form>
</body>
protected void Page_Load(object sender, EventArgs e)
{
var myDataSet = new DataSet();
var table1 = new DataTable();
table1.Columns.Add("FruitName");
table1.Columns.Add("FruitId");
table1.Rows.Add("Apple", 1);
table1.Rows.Add("Banana", 2);
table1.Rows.Add("Grapefruit", 3);
myDataSet.Tables.Add(table1);
DropDownListWithFruits.DataSource = myDataSet;
DropDownListWithFruits.DataBind();
}
答案 1 :(得分:2)
ComboboxName.DataSource = YourDataSetName
ComboboxName.DataValueField =您要返回其所选值的字段的名称
例如“ID”
ComboboxName.DataTextField =您要在下拉列表中查看的字段的名称
例如“姓名”
ComboboxName.DataBind()