C# - Binding Data to List Control

An ASP.NET list control can be bound to any data source that implements the IEnumerable, ICollection, or IListSource interfaces (for example, DataView, OleDBDataReader, SQLDataReader, Hashtable, and ArrayList). eXtensible Markup Language (XML) data can also be bound to the list controls, to fill a DataView object with its data and then bind the List Control to the DataView object.
 

This article will show you some examples of how to bind a data to List Control as follow:

Binding a List Control to an ArrayList

<%@Page Language="C#" %>
<script language="C#" runat="server">
     void Page_Load(Object sender, EventArgs e){
          if(!Page.IsPostBack){
 
               ArrayList arlist = new ArrayList();
               arlist.Add("Red");
               arlist.Add("Green");
               arlist.Add("Blue");
               arlist.Add("Yellow");

              myRBList.DataSource = arlist;
              myRBList.DataBind();
          }
     }

     void Submit_click(Object src, EventArgs e){
          if(myRBList.SelectedIndex > -1){
              msgLabel.Text = "You select : " + myRBList.SelectedItem.Text;
          }
     }
</script>
<html>
<body>
<form runat="server" id="form1" name="form1">

<asp:RadioButtonList id="myRBList" runat="server" />
<br><br>
<asp:button id="btnSubmit" runat="server" Text="Submit" onclick="Submit_click" />
<br><br>
<asp:label id="msgLabel" runat="server" />

</form>
</body>
</html>

Binding a List Control to a Hastable

<%@Page Language="C#" %>
<script language="C#" runat="server">
     void Page_Load(Object sender, EventArgs e){
          if(!Page.IsPostBack){
 
               Hashtable h = new Hashtable();
               h.Add("Product 1", "5");
               h.Add("Product 2", "8");
               h.Add("Product 3", "2");
               h.Add("Product 4", "13");

              myGrid.DataSource = h;
              myGrid.DataBind();
          }
     }
</script>
<html>
<body>
<asp:DataGrid id="myGrid" runat="server" AutoGenerateColumns="false">
   <Columns>
        <asp:TemplateColumn HeaderText="Product">
              <ItemTemplate>
                     <%# ((DictionaryEntry)Container.DataItem).Key %>
              </ItemTemplate>
        </asp:TemplateColumn>
        <asp:TemplateColumn HeaderText="Quantity">
              <ItemTemplate>
                     <%# ((DictionaryEntry)Container.DataItem).Value %>
              </ItemTemplate>
        </asp:TemplateColumn>
   </Columns>
</asp:DataGrid>

</body>
</html>

Binding a List Control to Dataview

<%@Page Language="C#" %>
<%@Import Namespace="System.Data" %>
<%@Import Namespace="System.Data.SqlClient" %>

<script language="C#" runat="server">
     void Page_Load(Object sender, EventArgs e){
           SqlConnection conn = new SqlConnection("server=localhost;uid=sa;pwd=;
                          database=northwind");
          SqlDataAdapter adapter = new SqlDataAdapter("select * from employees", conn);

          DataSet ds = new DataSet();
          adapter.Fill(ds, "employees");

         mygrid.DataSource = ds.Tables["employees"];
         mygrid.DataBind();
     }
</script>
<html>
<body>

<asp:datagrid id="mygrid" runat="server" />

</body>
</html>

Binding a List Control to XML Data Source

<%@Page Language="C#" %>
<%@Import Namespace="System.Data" %>
<%@Import Namespace="System.IO" %>

<script language="C#" runat="server">
     void Page_Load(Object sender, EventArgs e){

          DataSet ds = new DataSet();
          
          FileStream fs = new FileStream(Server.MapPath("mydata.xml") ,
                                                                 FileMode.Open, FileAccess.Read);
          StreamReader reader = new StreamReader(fs);
          ds.ReadXml(reader);

          fs.close();

          DataView source = new DataView(ds.Tables[0]);

          mygrid.DataSource = source;
          mygrid.DataBind();
     }
</script>
<html>
<body>

<asp:datagrid id="mygrid" runat="server" />

</body>
</html>
 
Visitor Review  Write a review
Search Review :

Samuel on 08 May 2013 06:13 reply

Hi!

This is a nice article. Thank for sharing your knowledge. There are some other links related to "Binding XML Data to

ListView Control in C#". I hope this is a very useful for developers.

http://www.mindstick.com/Articles/b065d7e4-e6a5-4d01-b66f-de1400e63916/?Binding%20XML%20Data%20to%20ListView%20Control

http://www.c-sharpcorner.com/UploadFile/c5c6e2/binding-xml-data-to-listview-control-dataset-approach/

 

jis joy on 06 Sep 2011 07:31 reply

NICE

 

Asma Ahamed on 08 Dec 2010 01:19 reply

Useful!!!

 
See all reviews
Write a review
Rating:
Your Message:
Name:
Email:
(optional)
(Your email that entered here will not show anywhere on website and will use only reference when someone reply your post)
  I want to receive a copy of email on this post (your email is needed)
 
Code:
 

Search this site