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> |