DataList kontrolü denetime bağlı öğelerin bir tekrarlanan listesini görüntülemek için kullanılan Repeater denetimi, gibi olduğunu. Ancak DataList kontrolü varsayılan olarak veri öğeleri etrafında bir tablo ekler.
bir DataList denetimi için bir DataSet bağlayın
DataList kontrolü denetime bağlı öğelerin bir tekrarlanan listesini görüntülemek için kullanılan Repeater denetimi, gibi olduğunu. Ancak DataList kontrolü varsayılan olarak veri öğeleri etrafında bir tablo ekler. DataList kontrolü veritabanı tablosu, bir XML dosyası veya öğelerin başka bir listeye bağlı olabilir. Burada bir DataList kontrolü için bir XML dosyası bağlamak nasıl gösterecektir.
Bizim örneklerde aşağıdaki XML dosyası kullanır ("cdcatalog.xml") :
<?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>
XML dosyasına bir göz atın: cdcatalog.xml
İlk olarak, ithal "System.Data" ad. Biz DataSet nesneleri ile çalışmak için bu ad gerekiyor. bir .aspx sayfanın en üstünde aşağıdaki yönergeyi ekleyin:
<%@ Import Namespace="System.Data" %>
Daha sonra, XML dosyası için bir DataSet oluşturmak ve sayfa ilk yüklendiğinde DataSet XML dosyası yüklemek:
<script runat="server">
sub Page_Load
if Not Page.IsPostBack then
dim mycdcatalog=New DataSet
mycdcatalog.ReadXml(MapPath("cdcatalog.xml"))
end if
end sub
Sonra bir .aspx sayfasında bir DataList oluşturun. Içeriği <HeaderTemplate> elemanı birinci oluşturulmuş ve sadece bir kez çıkış içinde, daha sonra içeriği <ItemTemplate> elemanı her biri için tekrar edilir "record" DataSet'te ve son, içeriği <FooterTemplate> elemanı vardır çıkış içinde bir kez render:
<html>
<body>
<form runat="server">
<asp:DataList id="cdcatalog" runat="server">
<HeaderTemplate>
...
</HeaderTemplate>
<ItemTemplate>
...
</ItemTemplate>
<FooterTemplate>
...
</FooterTemplate>
</asp:DataList>
</form>
</body>
</html>
Sonra DataSet oluşturur ve DataList kontrolleri mycdcatalog DataSet bağlar komut dosyasını ekleyin. Biz de birlikte DataList denetimi doldurmak bir <HeaderTemplate> tablonun başlığını içeren bir <ItemTemplate> veri öğeleri görüntülemek için içerir ve bir o <FooterTemplate> bir metin içeriyor. Not gridlines DataList nitelik olarak ayarlanır "both" masa sınırları görüntülemek için:
Örnek
<%@ 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>
<html>
<body>
<form runat="server">
<asp:DataList id="cdcatalog"
gridlines="both" runat="server">
<HeaderTemplate>
My CD Catalog
</HeaderTemplate>
<ItemTemplate>
"<%#Container.DataItem("title")%>" of
<%#Container.DataItem("artist")%> -
$<%#Container.DataItem("price")%>
</ItemTemplate>
<FooterTemplate>
Copyright Hege Refsnes
</FooterTemplate>
</asp:DataList>
</form>
</body>
</html>
»Örnek göster Stilleri kullanma
Ayrıca çıkış daha süslü hale getirmek için DataList kontrolleri stilleri ekleyebilirsiniz:
Örnek
<%@ 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>
<html>
<body>
<form runat="server">
<asp:DataList id="cdcatalog"
runat="server"
cellpadding="2"
cellspacing="2"
borderstyle="inset"
backcolor="#e8e8e8"
width="100%"
headerstyle-font-name="Verdana"
headerstyle-font-size="12pt"
headerstyle-horizontalalign="center"
headerstyle-font-bold="true"
itemstyle-backcolor="#778899"
itemstyle-forecolor="#ffffff"
footerstyle-font-size="9pt"
footerstyle-font-italic="true">
<HeaderTemplate>
My CD Catalog
</HeaderTemplate>
<ItemTemplate>
"<%#Container.DataItem("title")%>" of
<%#Container.DataItem("artist")%> -
$<%#Container.DataItem("price")%>
</ItemTemplate>
<FooterTemplate>
Copyright Hege Refsnes
</FooterTemplate>
</asp:DataList>
</form>
</body>
</html>
»Örnek göster Kullanımı <AlternatingItemTemplate>
Bir ekleyebilir <AlternatingItemTemplate> sonra elemanını <ItemTemplate> çıkış sıraları dönüşümlü görünümünü açıklamak için eleman. Sen de verilerin stil olabilir <AlternatingItemTemplate> DataList kontrolü dahilinde bölümünde:
Örnek
<%@ 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>
<html>
<body>
<form runat="server">
<asp:DataList id="cdcatalog"
runat="server"
cellpadding="2"
cellspacing="2"
borderstyle="inset"
backcolor="#e8e8e8"
width="100%"
headerstyle-font-name="Verdana"
headerstyle-font-size="12pt"
headerstyle-horizontalalign="center"
headerstyle-font-bold="True"
itemstyle-backcolor="#778899"
itemstyle-forecolor="#ffffff"
alternatingitemstyle-backcolor="#e8e8e8"
alternatingitemstyle-forecolor="#000000"
footerstyle-font-size="9pt"
footerstyle-font-italic="True">
<HeaderTemplate>
My CD Catalog
</HeaderTemplate>
<ItemTemplate>
"<%#Container.DataItem("title")%>" of
<%#Container.DataItem("artist")%> -
$<%#Container.DataItem("price")%>
</ItemTemplate>
<AlternatingItemTemplate>
"<%#Container.DataItem("title")%>" of
<%#Container.DataItem("artist")%> -
$<%#Container.DataItem("price")%>
</AlternatingItemTemplate>
<FooterTemplate>
© Hege Refsnes
</FooterTemplate>
</asp:DataList>
</form>
</body>
</html>
»Örnek göster