ASP.Net:需要有关绑定到数据库列的下拉列表的帮助

时间:2010-03-25 18:53:44

标签: asp.net drop-down-menu

我创建了具有列

的数据库
 - MemName
 - monthlyAmt
 - CurrentInstAmt

我已将 Memname 列与DropDownList框绑定;
在DropDownList框中选择memname值, currentInstAmt monthlyamt 的相应值应显示在文本框中。

我是asp.net的初学者

代码 -

DataSet dsMemname = new DataSet();
        try
        {
            con.ConnectionString = strcon;
            con.Open();
            cmd.Connection = con;
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.CommandText = "usp_Memcollection";
            SqlDataAdapter adp = new SqlDataAdapter(cmd.CommandText, con);
            adp.Fill(dsMemname);
            ddlmemname.DataTextField = "MemName";
            ddlmemname.DataSource = dsMemname;
            ddlmemname.DataBind();
        }
        catch (Exception ex)
        {

            throw ex;
        }

1 个答案:

答案 0 :(得分:1)

修改 首先,设置你的下拉列表的DataValueField,就像DataTextField一样:如下:

ddlmemname.DataValueField = "MemName";

结束编辑

将下拉列表的autopostback="True"设置为:

<asp:dropdownlist id="DropDownList1" runat="server" autopostback="true">
</asp:dropdownlist>

然后在您的网页后面的代码中,为您的下拉菜单添加一个事件:

Protected Sub DropDownList1_SelectedIndexChanged _
(ByVal sender As Object, ByVal e As System.EventArgs) _
Handles DropDownList1.SelectedIndexChanged
    Dim selval As String = DropDownList1.SelectedValue

    TextBox1.Text = getMonthlyAmt(selval)
    TextBox2.Text = getCurrentAmt(selval)
End Sub

两个get()方法是您自己的代码,用于查找相关值。此外,您可能希望以某种方式将它们优化为一个调用,具体取决于您从哪里进行调用以及性能考虑。