ASP.NET - Il controllo di DataList |
Per visualizzare una lista ripetuta degli articoli che sono limitati al controllo, il controllo di DataList � usato. Tuttavia, vicino stabilizzare il controllo di DataList aggiunge una tabella intorno agli elementi dei dati.
|
Legare un gruppo di dati ad un controllo di DataList
|
Per visualizzare una lista ripetuta degli articoli che sono limitati al controllo, il controllo di DataList � usato. Tuttavia, vicino stabilizzare il controllo di DataList aggiunge una tabella intorno agli elementi dei dati. Il controllo di DataList pu� essere limitato ad una lima di XML, ad una tabella della base di dati, o ad un'altra lista degli articoli. Qui mostreremo come legare una lima di XML ad un controllo di DataList.
Useremo la seguente lima di XML nei nostri esempi (�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>
|
|
Inizialmente, importare il namespace �di System.Data�. Per funzionare con gli oggetti di gruppo di dati, abbiamo bisogno di questo namespace. Alla parte superiore di una pagina di .aspx, includere il seguente indirizzamento:
|
<%@ Import Namespace="System.Data" %>
|
|
Dopo, generare un gruppo di dati per la lima di XML e quando la pagina in primo luogo � caricata, caricare la lima di XML nel gruppo di dati:
|
<script runat="server">
sub Page_Load
if Not Page.IsPostBack then
dim mycdcatalog=New DataSet
mycdcatalog.ReadXml(MapPath("cdcatalog.xml"))
end if
end sub
|
|
Allora in una pagina di .aspx, generiamo un DataList. Il contenuto dell'elemento del <HeaderTemplate> � reso in primo luogo e soltanto una volta all'interno dell'uscita ed allora il contenuto dell'elemento del <ItemTemplate> � ripetuto per ogni �annotazione� nel gruppo di dati ed ultimo, il contenuto dell'elemento del <FooterTemplate> � reso una volta all'interno dell'uscita:
|
<html>
<body>
<form runat="server">
<asp:DataList id="cdcatalog" runat="server">
<HeaderTemplate>
...
</HeaderTemplate>
<ItemTemplate>
...
</ItemTemplate>
<FooterTemplate>
...
</FooterTemplate>
</asp:DataList>
</form>
</body>
</html>
|
|
Allora aggiungiamo il seguente scritto che genera il gruppo di dati e lega il gruppo di dati del mycdcatalog al controllo di DataList ed inoltre riempiamo il controllo di DataList di <HeaderTemplate> che contiene l'intestazione della tabella, di <ItemTemplate> che contiene gli elementi dei dati per visualizzare e di <FooterTemplate> che contiene un testo. Si noti che per visualizzare i bordi della tabella, i gridlines che l'attributo del DataList � regolato �ad entrambi�:
|
<%@ 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>
|
|
Usando gli stili
|
Per rendere per produrre pi� immaginazione, potete anche aggiungere gli stili al controllo di DataList:
|
<%@ 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>
|
|
Usando il <AlternatingItemTemplate>
|
Dopo l'elemento del <ItemTemplate>, potete aggiungere un elemento del <AlternatingItemTemplate> per descrivere l'apparenza delle file alternate di uscita e potete designare i dati nella sezione del <AlternatingItemTemplate> all'interno del controllo di DataList:
|
<%@ 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>
|
|
|
|
Keywords:
ASP.NET using The DataList Control,
asp net datalist,
vb net datalist,
asp net control,
vb net using,
asp net using,
visual basic using,
visual basic control,
using visual basic 6,
c# datalist,
datalist datagrid,
msdn datalist,
datalist paging,
c# using,
dynamic datalist,
datalist dropdownlist,
datalist columns,
datalist sort,
datalist checkbox,
datagrid control,
datalist databinding,
datalist databind,
datalist datasource,
edit datalist,
datalist table,
repeater datalist,
repeater control,
datalist hyperlink,
datalist dataset,
dropdownlist control,
datalist header,
datalist select,
datalist button,
datalist xml,
datalist add
|