从下拉列表中选择值的问题

时间:2010-08-18 08:20:05

标签: c# asp.net

我在从下拉列表中选择值时遇到问题。无论我选择什么,只选择第一个值。请帮忙......

这是代码......

protected void Button4_Click(object sender, EventArgs e)
{
    SqlConnection con;

    String strcon = ConfigurationManager.AppSettings["Constr"].ToString();
    try
    {
        if (!IsPostBack)
        {
        con = new SqlConnection(strcon);
        con.Open();
        SqlDataAdapter da = new SqlDataAdapter("select user_name from user_details where role='USER'", con);     
        DataSet ds = new DataSet();

            da.Fill(ds);
            DropDownList1.DataTextField = "user_name";
            DropDownList1.DataSource = ds.Tables[0].DefaultView;
            DropDownList1.DataBind();
        }

    }
    catch (Exception ex)
    {
        Response.Write(ex.Message.ToString());

    }




protected void Button6_Click(object sender, EventArgs e)
{

    string Name = Session["name"].ToString();
    SqlConnection con;

    String strcon = ConfigurationManager.AppSettings["Constr"].ToString();
    try
    {
        con = new SqlConnection(strcon);
        con.Open();


        SqlDataAdapter da = new SqlDataAdapter("select user_name,Arival,late,Day_count from attedance where user_name='" + DropDownList1.SelectedItem.Text + "' ", con);
        DataSet ds = new DataSet();

        da.Fill(ds);
        GridView1.DataSource = ds.Tables[0].DefaultView;
        GridView1.DataBind();
    }
    catch (Exception ex)
    {
        Response.Write(ex.Message.ToString());

    }

1 个答案:

答案 0 :(得分:1)

不太明白你的代码。您已经显示了两个按钮单击事件处理程序。

第一个填充下拉列表,因此将选择第一个项目(这就是它的工作原理)。

第二个填充gridview。

如果问题出现在点击“Button4”(重命名按钮以明确他们所做的事情),那么这肯定是你的问题吗?

此外,您还没有关闭SqlConnection。使用使用块:

using (SqlConnection connection = new SqlConnection(connectionString))
{
    //Do work here
}
编辑:啊,刚刚注意到了(!IsPostBack)。

是否为下拉菜单启用了ViewState?