ASP.NET - O controle de DataList |
Para indicar uma lista repetida dos artigos que são limitados ao controle, o controle de DataList é usado. Entretanto, optar perto pelo controle de DataList adiciona uma tabela em torno dos artigos de dados.
|
Ligar uma série de dados a um controle de DataList
|
Para indicar uma lista repetida dos artigos que são limitados ao controle, o controle de DataList é usado. Entretanto, optar perto pelo controle de DataList adiciona uma tabela em torno dos artigos de dados. O controle de DataList pode ser limitado a uma lima de XML, a uma tabela da base de dados, ou a uma outra lista dos artigos. Aqui nós mostraremos como ligar uma lima de XML a um controle de DataList.
Nós usaremos a seguinte lima de XML em nossos exemplos (“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>
|
|
<
No início, importar o namespace de “System.Data”. Para trabalhar com os objetos da série de dados, nós necessitamos este namespace. No alto de uma página de .aspx, incluir a seguinte diretriz orientadora:
|
<%@ Import Namespace="System.Data" %>
|
|
Em seguida, criar uma série de dados para a lima de XML e quando a página é carregada primeiramente, carregar a lima de XML na série de dados:
|
<script runat="server">
sub Page_Load
if Not Page.IsPostBack then
dim mycdcatalog=New DataSet
mycdcatalog.ReadXml(MapPath("cdcatalog.xml"))
end if
end sub
|
|
Então em uma página de .aspx, nós criamos um DataList. Os índices do elemento do <HeaderTemplate> são rendidos primeiramente e somente uma vez dentro da saída e os índices do elemento do <ItemTemplate> são repetidos então para cada “registro” na série de dados, e último, os índices do elemento do <FooterTemplate> são rendidos uma vez dentro da saída:
|
<html>
<body>
<form runat="server">
<asp:DataList id="cdcatalog" runat="server">
<HeaderTemplate>
...
</HeaderTemplate>
<ItemTemplate>
...
</ItemTemplate>
<FooterTemplate>
...
</FooterTemplate>
</asp:DataList>
</form>
</body>
</html>
|
|
Então nós adicionamos o seguinte certificado que cría a série de dados e liga a série de dados do mycdcatalog ao controle de DataList e enchemos também o controle de DataList com um <HeaderTemplate> que contenha o encabeçamento da tabela, um <ItemTemplate> que contenha os artigos de dados para indicar, e um <FooterTemplate> que contenha um texto. Anotar isso para indicar beiras da tabela, os gridlines que o atributo do DataList é ajustado a “ambos”:
|
<%@ 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 estilos
|
Para fazer para output mais fantasia, você pode também adicionar estilos ao controle de 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 o <AlternatingItemTemplate>
|
Após o elemento do <ItemTemplate>, você pode adicionar um elemento do <AlternatingItemTemplate> para descrever a aparência de fileiras alternas da saída e você pode denominar os dados na seção do <AlternatingItemTemplate> dentro do controle de 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
|