我想在c#.net中使用数据库返回值的自动完成文本框的代码

时间:2015-03-09 10:56:22

标签: asp.net .net

private void txtBoxSearch_TextChanged(object sender,EventArgs e)         {

        AutoCompleteStringCollection namecollection = new AutoCompleteStringCollection();

        SqlConnection con = new SqlConnection("connectionn string");
        SqlCommand cmd = new SqlCommand();
        cmd.Connection = con;
        cmd.CommandType = CommandType.Text;
        string searchFor = "%" + txtBoxSearch.Text + "%";
       com.CommandText = "select cust_nm from Customer_Info where  (cust_nm LIKE ' %  " + searchFor + " %') ";


        con.Open();
        cmd.Parameters.AddWithValue("@name", searchFor);
        SqlDataReader rea = cmd.ExecuteReader();
        if (rea.HasRows == true)
        {
            while (rea.Read())
                namecollection.Add(rea["name"].ToString());
        }
        rea.Close();

        txtBoxSearch.AutoCompleteMode = AutoCompleteMode.Suggest;
        txtBoxSearch.AutoCompleteSource = AutoCompleteSource.CustomSource;
        txtBoxSearch.AutoCompleteCustomSource = namecollection;

    }

我想要充当搜索选项的文本框

1 个答案:

答案 0 :(得分:0)

这里有一些问题

  1. 您在com上设置CommandText但执行cmd

  2. 您在变量和CommandText

  3. 上设置了%
  4. 您添加了一个参数,但CommandText中没有该参数