Favorilerine Ekle | Giriş Sayfan Yap | Tavsiye Et

 

Kurs Tanıtım Sayfası | Süper Üye Kimdir? | Menü Tasarımı Konulu Örnek Ders
Kod İndir| Hazır Kodlar | Makaleler| İpuçları | VB .NET Kursu | Dersler | Forum | Alt Bölümler | Servisler
    Merhaba Misafir
    anasayfa » .NET makaleleri » net » <AlternatingItemTemplate> 'li Repeater Control Nedir?
Üye Girişi
Kullanıcı Adı:  
Şifre : 
Kaydet ?
Siteden tam olarak faydalanabilmek için üye olmalısınız.
Unuttuğunuz şifrenizi öğrenebilmek için kayıt sırasında verdiğiniz Hatırlatma Cevabı'nı bilmeniz gereklidir.
Şifre hatırlatma işlevini sadece 3 defa kullanma hakkınız vardır.
Kullanıcı adını ve şifresini unutan üyelere email ile yardım verilmez.

Aktivasyon Gelmedi mi?Aktivasyon mesajınız email adresinize gelmedi mi?
Buraya tıklayarak bir kez daha aktivasyon mesajı gönderilmesini sağlayabilirsiniz.
Lütfen email hesabınızın BULK ve SPAM klasörlerini de kontrol ediniz.
Rastgele Makale

Text Nesnesinin Gotfocus özelliği ile...

Yazar: wampirman

Webmasterlar
Sitenize Ekleyin!
Sitenizde "Son Eklenen 10 Visual Basic Yazısı"'nı göstermek ve içeriğini zenginleştirmek için buraya tıklayınız.

Vbasicmaster.com'a link verin!
Aşağıdaki minik banneri sitenize eklemek için tıklayın!

Üye Sayısı:
Ziyaretçiler nerede?
Yayın № : 1536
Yayın Tar:10.12.2004
Yazar : teoshaker
Hit :2940

Bu Yazarın Yazıları Sadece bu yazarın  göster
Bu Yazıyı Tavsiye Et

Arkadaşlar yeniden merhaba ,

Geçen makalemde Repeater Control nedir bunu tanımlamıştık ve bir örnek ile göstermiştik.Bu makalemde <AlternatingItemTemplate> tag?ini nasil kullanırız bunu göstemeye çalışıcam. ?Repeater Control Nedir ?? adlı makalemi okuyamayanlar için tekrar hem bir tekrar olacak hem de <AlternatingItemTemplate> kullanımını göreceğiz.

Elimizde cdcatalog.xml adında bir dosyamız vardı. İsterseniz xml içeriğini vereyim ve siz hemen şöyle anlamaya çalışın :

<?xml version="1.0" encoding="ISO-8859-1"?>
<catalog>
<cd>
<title>Empire Burlesque</title>
<artist>Bob Dylan</artist>
<country>USA</country>
<company>Columbia</company>
<price>10.90</price>
<year>1985</year>
</cd>
<cd>
<title>Hide your heart</title>
<artist>Bonnie Tyler</artist>
<country>UK</country>
<company>CBS Records</company>
<price>9.90</price>
<year>1988</year>
</cd>
<cd>
<title>Greatest Hits</title>
<artist>Dolly Parton</artist>
<country>USA</country>
<company>RCA</company>
<price>9.90</price>
<year>1982</year>
</cd>
<cd>
<title>Still got the blues</title>
<artist>Gary Moore</artist>
<country>UK</country>
<company>Virgin records</company>
<price>10.20</price>
<year>1990</year>
</cd>
<cd>
<title>Eros</title>
<artist>Eros Ramazzotti</artist>
<country>EU</country>
<company>BMG</company>
<price>9.90</price>
<year>1997</year>
</cd>
</catalog>

Gördüğünüz gibi burada bir catalog sözkonusu ve bu catalog içinde müzik cd ?nin özellikleri belirtiliyor.Biz az sonra web sayfasında ( mesela deneme.aspx olsun) oluşturacağımız tabloyu bu xml dosyasına bağlıyacağız.Sizce html olarak oluşturacağımız tablonun sütun isimleri ne olur ?
Xml dosyasına bakarsaniz hepsinde ortak olan başlıklar , ?title?,?artist?,?country?,company?, ?price?,?year? dır.

Şimdi ben html olarak bir tablo oluşturacam ama bilgileri bu tabloya nasıl alıcam diyebilirsiniz.
Burada asp.net ?in benim en sevdiğim özelliği dataset devreye giriyor..
Önce şunu belirtelim..Ben bu bilgiyi bir yerden alıp tabloma getireceğim değil mi ? Yani import edicem. Bunun için önce program kodumuzu yazalım.

<%@ import namespace=?System.Data? %>

Sonraki satırda artık serverda çalışacak script kodumuzu yazabiliriz.

<script runat=?server?>

?imdi sayfayı ilk çalıştırdığımızda yani sayfa yüklendiğinde birşeyler yazmalıyız ki komutumuz gitsin bilgiyi okusun xml içinde ne varsa...

Sub Page_Load
If Not Page.IsPostBack Then
dim mycdcatalog=New DataSet
mycdcatalog.ReadXml(MapPath("cdcatalog.xml"))


Burada mycdcatalog isminde yeni bir dataset tanımladık.Buna siz ister elma,armut ; isterseniz başka birşey deyin.
Mycdcatalog artik yeni bir dataset?tir.Simdi bu dataset yani mycdcatalog ReadXml yardımıyla MapPath kullanarak ( bir yerde bi dosya var , o dosyanın nerede olduğunun tanımı yapılıyor.)
Cdcatalog.xml içindeki veriyi okuyacak.Ancak daha data bağlanmış değil.

cdcatalog.DataSource=mycdcatalog Data kaynağı olarak gösterilen cdcatalog datasetimize yani mycdcatalog ?a eşitliyoruz. ?imdi bir de bağlantıyı yapalım.Resmen bağlan diyelim.Yoksa anlamıyor J

cdcatalog.DataBind()
end if
end sub
</script>

Ne yaptık şimdi biz ? Tüm kodları bir araya toparlayalım isterseniz...

<%@ Import Namespace="System.Data" %>
<script runat="server">
sub Page_Load
if Not Page.IsPostBack then
dim mycdcatalog=New DataSet
mycdcatalog.ReadXml(MapPath("cdcatalog.xml"))
cdcatalog.DataSource=mycdcatalog
cdcatalog.DataBind()
end if
end sub
</script>

?imdi geldi html kısmına.. Bildiğiniz gibi bir tablonun başlık kısmı vardır..Bu başlık kısmında sütunların ismi bulunur..Neydi bizim sütunları oluşturacak başlıklar : ?Title? , ?Artist? , ?Country?
?Company? , ?Price? , ? Year?..

?imdi oluşturacağınız tablo server ?da çalışacağını unutmayalım.
<html>
<body>
<form runat=?server?>
<asp:Repeater id=?cdcatalog? runat=?server?>
<HeaderTemplate>
<table border=?1? width=?100%?>
<tr>
<th>Title</th>
<th>Artist</th>
<th>Country</th>
<th>Company</th>
<th>Price</th>
<th>Year</th>
</tr>
<HeaderTemplate>

<ItemTemplate>
<tr>
<td><%#Container.DataItem("title")%></td>
<td><%#Container.DataItem("artist")%></td>
<td><%#Container.DataItem("country")%></td>
<td><%#Container.DataItem("company")%></td>
<td><%#Container.DataItem("price")%></td>
<td><%#Container.DataItem("year")%></td>
</tr>
</ItemTemplate>

Sütun isimlerini görüyorsunuz..Ama burada <%#Container.DataItem("fieldname?)%> yardımı ile xml içindeki ilgili alanadindan bilgi alınıyor ve satıra yerleşiyor..Tabi ki ilgili sütunun altına.Ve bu işlem sürekli oluyor.

?imdi sıra geldi asıl konumuza..Bunun tek esprisi birer satır aralıkla satırın rengini değiştiriyor olması..Tabi buna olanak veriyor..Adı üzerinde <AlternatingItemTemplate>?Bu taglar arasında meydana gelen olay <ItemTemplate> ile aynı ancak neticeyi isterseniz sayfanızı çalıştırıp görün .



<AlternatingItemTemplate>
<tr bgcolor="#e8e8e8">
<td><%#Container.DataItem("title")%></td>
<td><%#Container.DataItem("artist")%></td>
<td><%#Container.DataItem("country")%></td>
<td><%#Container.DataItem("company")%></td>
<td><%#Container.DataItem("price")%></td>
<td><%#Container.DataItem("year")%></td>
</tr>
</AlternatingItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
</form>
</body>
</html>

Bir sonraki makaleme kadar hoşçakalın.Sürekli kod yazın.
Teoshaker





Yorumlar, eklemeler ve düşünceler
        Ellerine sağlık dostum tşk...

   seawolf, 06.11.2008 13:58
© Hakan Ersöz 2000-2013| Üyelik Sözleşmesi | | Ödeme Bildirimi
Sitemizden yenilikleri hemen öğrenin, pop upları engelleyin, chat yapın... ToolBarımızı indirin:
Vasicmaster Toolbar'ı indirin