DataList Nesnesinde Alfabetik Sıralama
Bu makalemizde Northwind veritabandaki Customers tablosuna bağlanacağız. Bu tablodaki verileri CustomerID sine göre Datalist nesnesinde alfabetik olarak göstereceğiz. (Şekil 1)
Şekil 1
Son olarak Şekil 2 de gösterildiği gibi < ItemTemplate > < / ItemTemplate > arasına bağlanacağımız tablodaki sütundaki verileri çekeceğimiz alanları yazacağız. Ayrıca Datalist nesnesinin ItemStyle HeaderStyle kısımlarından backcolor, forecolor renklerini değiştirebilirsiniz.
Şekil 2
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Data.OleDb;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (Request.QueryString["word"] != null)
{
Alfabetik_Sayfala(Request.QueryString["word"]);
}
else
{
getir();
}
}
void getir()
{
OleDbConnection baglan= new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("App_Data/Northwind.mdb"));
string sorgu = "Select CustomerID, CompanyName, ContactName, ContactTitle, Address From Customers";
OleDbDataAdapter da = new OleDbDataAdapter(sorgu, baglan);
DataSet ds=new DataSet();
OleDbCommand cmd = new OleDbCommand(sorgu,baglan);
cmd.Connection.Open();
DataList1.DataSource = cmd.ExecuteReader();
DataList1.DataBind();
cmd.Connection.Close();
}
void Alfabetik_Sayfala(string harf)
{
OleDbConnection baglan = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("App_Data/Northwind.mdb"));
string sorgu = "Select Top 10 CustomerID, CompanyName, ContactName, ContactTitle, Address from Customers Where CustomerID like ’%" + harf + "%’" ;
OleDbCommand cmd = new OleDbCommand(sorgu, baglan);
cmd.Connection.Open();
DataList1.DataSource = cmd.ExecuteReader();
DataList1.DataBind();
cmd.Connection.Close();
}
protected void DataList1_ItemDataBound(object sender, DataListItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Footer)
{
for (char c = ’A’; c <= ’Z’; c++)
{
HyperLink link = new HyperLink();
link.Text = c.ToString() + " ";
link.NavigateUrl = "Default.aspx?word=" + c.ToString();
e.Item.Controls.Add(link);
}
}
}
}
Bir makalenin daha sonuna geldik. Bir sonraki makalede görüşünceye kadar, hoşçakalın. Bahadır ŞAHİN