Data Binding to DropDownList and ListBox in
ASP.NET
Binding Data to
DropDownList Control
To bind the data to
DDL, just place the DDL Control on your web page and write the C# logic in
code-behind.
Default.aspx Code
<div>
<asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="true">
<asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="true">
</asp:DropDownList>
</div>
</div>
C# Code
DropDownList1.Items.Add(new ListItem("Select Customer", ""));
DropDownList1.AppendDataBoundItems = true;
String strConnString =ConfigurationManager.ConnectionStrings["NorthwindConnectionString1"].ConnectionString;
String strQuery = "SELECT CustomerID, ContactName FROM Customers";
SqlConnection con = new SqlConnection(strConnString);
SqlCommand cmd = new SqlCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = strQuery;
cmd.Connection = con;
try
{
con.Open();
DropDownList1.DataSource = cmd.ExecuteReader();
DropDownList1.DataTextField = "ContactName";
DropDownList1.DataValueField = "CustomerID";
DropDownList1.DataBind();
}
catch (Exception ex)
{
throw ex;
}
finally
{
con.Close();
con.Dispose();
}
DropDownList1.AppendDataBoundItems = true;
String strConnString =ConfigurationManager.ConnectionStrings["NorthwindConnectionString1"].ConnectionString;
String strQuery = "SELECT CustomerID, ContactName FROM Customers";
SqlConnection con = new SqlConnection(strConnString);
SqlCommand cmd = new SqlCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = strQuery;
cmd.Connection = con;
try
{
con.Open();
DropDownList1.DataSource = cmd.ExecuteReader();
DropDownList1.DataTextField = "ContactName";
DropDownList1.DataValueField = "CustomerID";
DropDownList1.DataBind();
}
catch (Exception ex)
{
throw ex;
}
finally
{
con.Close();
con.Dispose();
}
Binding Data to
ListBox Control
To bind the data to
the LB, just place the LB Control on your web page and write the C# logic in
code-behind.
Default2.aspx
<div>
<asp:ListBox ID="ListBox1" runat="server">
<asp:ListBox ID="ListBox1" runat="server">
</asp:ListBox>
</div>
</div>
Default2.aspx.cs
ListBox1.Items.Add(new ListItem("Select Customer", ""));
ListBox1.AppendDataBoundItems = true;
String strConnString =ConfigurationManager.ConnectionStrings["NorthwindConnectionString1"].ConnectionString;
String strQuery = "SELECT CustomerID, ContactName FROM Customers";
SqlConnection con = new SqlConnection(strConnString);
SqlCommand cmd = new SqlCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = strQuery;
cmd.Connection = con;
try
{
con.Open();
ListBox1.DataSource = cmd.ExecuteReader();
ListBox1.DataTextField = "ContactName";
ListBox1.DataValueField = "CustomerID";
ListBox1.DataBind();
}
catch (Exception ex)
{
throw ex;
}
finally
{
con.Close();
con.Dispose();
}
ListBox1.AppendDataBoundItems = true;
String strConnString =ConfigurationManager.ConnectionStrings["NorthwindConnectionString1"].ConnectionString;
String strQuery = "SELECT CustomerID, ContactName FROM Customers";
SqlConnection con = new SqlConnection(strConnString);
SqlCommand cmd = new SqlCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = strQuery;
cmd.Connection = con;
try
{
con.Open();
ListBox1.DataSource = cmd.ExecuteReader();
ListBox1.DataTextField = "ContactName";
ListBox1.DataValueField = "CustomerID";
ListBox1.DataBind();
}
catch (Exception ex)
{
throw ex;
}
finally
{
con.Close();
con.Dispose();
}
If you want to
execute some business logic when the user selects the item from a DropDownList,
you just need to add another method and call it from the DropDownList's
OnSelectedIndexChanged. Find the code below:
Defaulat.aspx
<div>
Select Customer ID
<asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="true"
OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged">
</asp:DropDownList>
<br /><br /><br />
<hr />
<br />
Company Name: <asp:TextBox ID="txtCompanyName" runat="server"></asp:TextBox>
<br />
Contact Title: <asp:TextBox ID="txtContactTitle" runat="server"></asp:TextBox>
<br />
Address: <asp:TextBox ID="txtAddress" runat="server"></asp:TextBox>
<br />
City: <asp:TextBox ID="txtCity" runat="server"></asp:TextBox>
<br />
Country: <asp:Label ID="lblCountry" runat="server" Text=""></asp:Label>
<br />
Select Customer ID
<asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="true"
OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged">
</asp:DropDownList>
<br /><br /><br />
<hr />
<br />
Company Name: <asp:TextBox ID="txtCompanyName" runat="server"></asp:TextBox>
<br />
Contact Title: <asp:TextBox ID="txtContactTitle" runat="server"></asp:TextBox>
<br />
Address: <asp:TextBox ID="txtAddress" runat="server"></asp:TextBox>
<br />
City: <asp:TextBox ID="txtCity" runat="server"></asp:TextBox>
<br />
Country: <asp:Label ID="lblCountry" runat="server" Text=""></asp:Label>
<br />
</div>
Default.aspx.cs
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
DropDownList1.Items.Add(new ListItem("Select Customer", ""));
DropDownList1.AppendDataBoundItems = true;
String strConnString =ConfigurationManager.ConnectionStrings["NorthwindConnectionString1"].ConnectionString;
String strQuery = "SELECT CustomerID, ContactName FROM Customers";
SqlConnection con = new SqlConnection(strConnString);
SqlCommand cmd = new SqlCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = strQuery;
cmd.Connection = con;
try
{
con.Open();
DropDownList1.DataSource = cmd.ExecuteReader();
DropDownList1.DataTextField = "ContactName";
DropDownList1.DataValueField = "CustomerID";
DropDownList1.DataBind();
}
catch (Exception ex)
{
throw ex;
}
finally
{
con.Close();
con.Dispose();
}
}
}
{
if (!IsPostBack)
{
DropDownList1.Items.Add(new ListItem("Select Customer", ""));
DropDownList1.AppendDataBoundItems = true;
String strConnString =ConfigurationManager.ConnectionStrings["NorthwindConnectionString1"].ConnectionString;
String strQuery = "SELECT CustomerID, ContactName FROM Customers";
SqlConnection con = new SqlConnection(strConnString);
SqlCommand cmd = new SqlCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = strQuery;
cmd.Connection = con;
try
{
con.Open();
DropDownList1.DataSource = cmd.ExecuteReader();
DropDownList1.DataTextField = "ContactName";
DropDownList1.DataValueField = "CustomerID";
DropDownList1.DataBind();
}
catch (Exception ex)
{
throw ex;
}
finally
{
con.Close();
con.Dispose();
}
}
}
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
String strConnString =ConfigurationManager.ConnectionStrings["NorthwindConnectionString1"].ConnectionString;
String strQuery = "SELECT * FROM Customers WHERE CustomerID = @CustomerID";
SqlConnection con = new SqlConnection(strConnString);
SqlCommand cmd = new SqlCommand();
cmd.Parameters.AddWithValue("@CustomerID", DropDownList1.SelectedItem.Value);
cmd.CommandType = CommandType.Text;
cmd.CommandText = strQuery;
cmd.Connection = con;
try
{
con.Open();
SqlDataReader sdr = cmd.ExecuteReader();
while (sdr.Read())
{
txtCompanyName.Text = sdr["CompanyName"].ToString();
txtContactTitle.Text = sdr["ContactTitle"].ToString();
txtAddress.Text = sdr["Address"].ToString();
txtCity.Text = sdr["City"].ToString();
lblCountry.Text = sdr["Country"].ToString();
}
}
catch (Exception ex)
{
throw ex;
}
finally
{
con.Close();
con.Dispose();
}
}
{
String strConnString =ConfigurationManager.ConnectionStrings["NorthwindConnectionString1"].ConnectionString;
String strQuery = "SELECT * FROM Customers WHERE CustomerID = @CustomerID";
SqlConnection con = new SqlConnection(strConnString);
SqlCommand cmd = new SqlCommand();
cmd.Parameters.AddWithValue("@CustomerID", DropDownList1.SelectedItem.Value);
cmd.CommandType = CommandType.Text;
cmd.CommandText = strQuery;
cmd.Connection = con;
try
{
con.Open();
SqlDataReader sdr = cmd.ExecuteReader();
while (sdr.Read())
{
txtCompanyName.Text = sdr["CompanyName"].ToString();
txtContactTitle.Text = sdr["ContactTitle"].ToString();
txtAddress.Text = sdr["Address"].ToString();
txtCity.Text = sdr["City"].ToString();
lblCountry.Text = sdr["Country"].ToString();
}
}
catch (Exception ex)
{
throw ex;
}
finally
{
con.Close();
con.Dispose();
}
}
No comments:
Post a Comment