从数据库检索时,dropdownlist不显示数据 [英] dropdownlist is not displaying data while retrieving from database

查看:68
本文介绍了从数据库检索时,dropdownlist不显示数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述



我正在尝试下面的代码来显示数据库中的下拉列表和文本框中的数据



但Textboses工作正常但是 Dropdownlist没有显示数据库的数据。



请帮助..



Hi,
I m trying below code to display data from database in dropdownlist as well as textbox

but Textboses are working fine but Dropdownlist is not showing data of database.

Pls Help..

SqlCommand cmd = default(SqlCommand);
        SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["Callregister_connectionstring"].ConnectionString);
         con.Open();
        cmd = new SqlCommand("Select * from Call_Reg where Complaint_no='" + ddlupCompl.SelectedItem.ToString() + "'", con);
         SqlDataReader reader = cmd.ExecuteReader();
        int i=0;
        while (reader.Read())
        {
            txtRegdt.Text = Convert.ToString(reader["Reg_dt"]);
            txtComplnno.Text = Convert.ToString(reader["Complaint_no"]);
            txtFname.Text = Convert.ToString(reader["Cust_FName"]);
            txtLname.Text = Convert.ToString(reader["Cust_LName"]);
            txtPh.Text = Convert.ToString(reader["ph_no"]);
            txtMob.Text = Convert.ToString(reader["mob_no"]);
            txtemail.Text = Convert.ToString(reader["email"]);
            txtadd.Text = Convert.ToString(reader["address"]);
            txtcity.Text = Convert.ToString(reader["city"]);
            txtdist.Text = Convert.ToString(reader["dist"]);
            ddlstat.Items.Add(new ListItem(Convert.ToString(reader["state"]),i.ToString()));
            i++;
}
con.close();

推荐答案

首先,在你的页面加载事件中填写列表声明:

First, on your page load event fill the list of states:
protected void Page_Load(object sender, System.EventArgs e)
{
if(!IsPostBack)
{
fillStates();
}
}
//function to fill state list
protected void fillStates()
{
SqlCommand cmd = default(SqlCommand);
SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["Callregister_connectionstring"].ConnectionString);
con.Open();
cmd = new SqlCommand("Select distinct stateID,stateName from YourStateTable", con);
SqlDataReader reader = cmd.ExecuteReader();

while (reader.Read())
{
ListItem li = new ListItem();
li.Text = Convert.ToString(reader["stateName"]);
li.Value = Convert.ToString(reader["stateID"]);
ddlstat.Items.Add(li);
}
con.close();
}





现在按钮点击事件写一下



Now on you button click event write

protected void btnDetails_Click(object sender, System.EventArgs e)
{
SqlCommand cmd = default(SqlCommand);
SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["Callregister_connectionstring"].ConnectionString);
con.Open();
cmd = new SqlCommand("Select * from Call_Reg where Complaint_no='" + ddlupCompl.SelectedItem.ToString() + "'", con);
SqlDataReader reader = cmd.ExecuteReader();
txtRegdt.Text = Convert.ToString(reader["Reg_dt"]);
txtComplnno.Text = Convert.ToString(reader["Complaint_no"]);
txtFname.Text = Convert.ToString(reader["Cust_FName"]);
txtLname.Text = Convert.ToString(reader["Cust_LName"]);
txtPh.Text = Convert.ToString(reader["ph_no"]);
txtMob.Text = Convert.ToString(reader["mob_no"]);
txtemail.Text = Convert.ToString(reader["email"]);
txtadd.Text = Convert.ToString(reader["address"]);
txtcity.Text = Convert.ToString(reader["city"]);
txtdist.Text = Convert.ToString(reader["dist"]);
ddlstat.SelectedValue = Convert.ToString(reader["state"]);
/*the above line willl set the value to the stored value if you are storing id 
of the state in the database. If you are storing state as text in the database replace the line with following line:
ddlstat.SelectedIndex =
ddlstat.Items.IndexOf(ddlstat.Items.FindByValue(Convert.ToString(reader["state"])))
*/
con.close();
}


试试这个:仅限下拉列表

Try this: For dropdown list only
private void dropdownlistbind()
    {
       
        SqlCommand cmd = new SqlCommand("Your Command using appropriate clause","Your Connection");
        SqlDataAdapter da = new SqlDataAdapter(cmd);
        DataSet ds = new DataSet();
        da.Fill(ds);
        DropDownList1.DataSource = ds;
        // FieldName of Table in DataBase
        DropDownList1.DataValueField = "FieldName";
        DropDownList1.DataBind();   
      }	


首先 - 绑定page_load事件的下拉列表。



SqlCommand cmd = default(SqlCommand);

SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings [Callregister_connectionstring]。ConnectionString);

con.Open();

cmd = new SqlCommand(从Call_Reg中选择*,其中Complaint_no =''+ ddlupCompl.SelectedItem.ToString()+'',con);

SqlDataReader reader = cmd。 ExecuteReader();

int i = 0;

while(reader.Read())

{

txtRegdt.Text = Convert.ToString(reader [Reg_dt]);

txtComplnno.Text = Convert.ToString(reader [Complaint_no]);

txtFname。 Text = Convert.ToString(reader [Cust_FName]);

txtLname.Text = Convert.ToString(reader [Cust_LName]);

txtPh.Text = Convert.ToString(reader [ph_no]);

txtMob.Text = Convert.ToString(reader [mob_no]);

txtemail.Text = Conve rt.ToString(reader [email]);

txtadd.Text = Convert.ToString(reader [address]);

txtcity.Text = Convert。 ToString(reader [city]);

txtdist.Text = Convert.ToString(reader [dist]);



First - Bind the dropdown on page_load event.

SqlCommand cmd = default(SqlCommand);
SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["Callregister_connectionstring"].ConnectionString);
con.Open();
cmd = new SqlCommand("Select * from Call_Reg where Complaint_no=''" + ddlupCompl.SelectedItem.ToString() + "''", con);
SqlDataReader reader = cmd.ExecuteReader();
int i=0;
while (reader.Read())
{
txtRegdt.Text = Convert.ToString(reader["Reg_dt"]);
txtComplnno.Text = Convert.ToString(reader["Complaint_no"]);
txtFname.Text = Convert.ToString(reader["Cust_FName"]);
txtLname.Text = Convert.ToString(reader["Cust_LName"]);
txtPh.Text = Convert.ToString(reader["ph_no"]);
txtMob.Text = Convert.ToString(reader["mob_no"]);
txtemail.Text = Convert.ToString(reader["email"]);
txtadd.Text = Convert.ToString(reader["address"]);
txtcity.Text = Convert.ToString(reader["city"]);
txtdist.Text = Convert.ToString(reader["dist"]);

ddlstat.SelectedIndex =
    ddlstat.Items.IndexOf(ddlstat.Items.FindByValue(Convert.ToString(reader["state"])))







i ++;

}

con.close();




i++;
}
con.close();


这篇关于从数据库检索时,dropdownlist不显示数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆