웹 페이지 튜토리얼login
웹 페이지 튜토리얼
작가:php.cn  업데이트 시간:2022-04-11 14:20:28

웹 양식 데이터 목록


ASP.NET Web Forms - DataList 컨트롤


Repeater 컨트롤과 유사한 DataList 컨트롤은 컨트롤에 바인딩된 항목의 반복 목록을 표시하는 데 사용됩니다. 그러나 DataList 컨트롤은 기본적으로 데이터 항목에 테이블을 추가합니다.


DataList 컨트롤에 DataSet 바인딩

DataList 컨트롤은 Repeater 컨트롤과 유사하며 컨트롤에 바인딩된 항목의 반복 목록을 표시하는 데 사용됩니다. 그러나 DataList 컨트롤은 기본적으로 데이터 항목에 테이블을 추가합니다. DataList 컨트롤은 데이터베이스 테이블, XML 파일 또는 기타 항목 목록에 바인딩될 수 있습니다. 여기에서는 XML 파일을 DataList 컨트롤에 바인딩하는 방법을 보여줍니다.

이 예에서는 다음 XML 파일("cdcatalog.xml")을 사용합니다:

<?xml version="1.0" 인코딩="ISO-8859-1"?>

< ;catalog> ;
<cd>
제국 풍자
<아티스트>밥 딜런</artist>
<국가>미국</국가>
<회사>콜롬비아</company>
<가격>10.90</price>
<연도>1985</년>
</cd>
<cd>
<title>마음을 숨겨보세요</title>
<아티스트>보니 타일러</artist>
<국가>영국</국가>
<회사>CBS 레코드</company>
<가격>9.90</price>
<연도>1988</년>
</cd>
<cd>
<title>최고의 히트곡</title>
<아티스트>돌리 파튼</artist>
<국가>미국</국가>
<회사>RCA</company>
<가격>9.90</price>
<연도>1982</년>
</cd>
<cd>
<title>아직도 우울함이 남아있습니다</title>
<아티스트>게리 무어</artist>
<국가>영국</국가>
<컴퍼니>버진 레코드</company>
<가격>10.20</price>
<연도>1990</년>
</cd>
<cd>
<title>에로스</title>
<아티스트>에로스 라마조티</artist>
<국가>EU</국가>
<회사>BMG</company>
<가격>9.90</price>
<연도>1997</year>
</cd>
</catalog>

이 XML 파일 보기: cdcatalog.xml

먼저 "System.Data" 네임스페이스를 가져옵니다. DataSet 개체를 사용하려면 이 네임스페이스가 필요합니다. .aspx 페이지 상단에 다음 지시문을 포함합니다.

<%@ Import Namespace="System.Data" %>

다음으로 XML 파일에 대한 DataSet을 만들고 처음 로드할 때 로드합니다. 이 XML 파일을 DataSet에 추가합니다.

<script runat="server">
sub Page_Load
if Not Page.IsPostBack then
​ 희미한 mycdcatalog=새 데이터 세트
​ mycdcatalog.ReadXml(MapPath("cdcatalog.xml"))
end if
end sub

그런 다음 .aspx 페이지에 DataList 컨트롤을 만듭니다. <HeaderTemplate> 요소의 콘텐츠는 먼저 렌더링되어 출력에 한 번만 나타나는 반면, <ItemTemplate> 요소의 콘텐츠는 DataSet의 각 "레코드"에 대해 반복됩니다. FooterTemplate> 요소의 내용은 출력에 한 번만 나타납니다.

<html>
<body>

<form runat="server">
<asp:DataList id="cdcatalog" runat= "서버">

<HeaderTemplate>
...
</HeaderTemplate>

<ItemTemplate>
...
</ItemTemplate>

<FooterTemplate>
...
< /FooterTemplate>

</asp:DataList>
</form>

</body>
</html>

그런 다음 스크립트를 추가하여 DataSet을 생성하고 mycdcatalog DataSet을 데이터리스트 컨트롤. 그 다음에 헤더를 포함하는 <HeaderTemplate>, 표시할 데이터 항목을 포함하는 <FooterTemplate> DataList의 눈금선 속성을 "both"로 설정하여 테이블 테두리를 표시할 수 있습니다.

Example

<%@ 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>

<!DOCTYPE html>
<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>
© Hege Refsnes
</FooterTemplate>

</asp:DataList>
</form>

</body>
</html>

예제 실행»

온라인 예를 보려면 "예제 실행" 버튼을 클릭하세요


스타일 사용

DataList 컨트롤에 스타일을 추가하여 출력을 더욱 멋지게 만들 수도 있습니다.

Instance

<%@ 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>

<!DOCTYPE html>
<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>
© Hege Refsnes
</FooterTemplate>

</asp:DataList>
</form>

</body>
</html>

Run Instance»

온라인 예제를 보려면 "인스턴스 실행" 버튼을 클릭하세요.


<AlternatingItemTemplate> 사용

<ItemTemplate> 요소 뒤에 <AlternatingItemTemplate> 요소를 추가하여 출력에서 ​​교대로 나타나는 행의 모양을 설명할 수 있습니다. DataList 컨트롤 내부의 <AlternatingItemTemplate> 영역에 스타일을 추가할 수 있습니다.

Instance

<%@ 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>

<!DOCTYPE html>
<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>

Run Instance »

온라인 인스턴스를 보려면 "인스턴스 실행" 버튼을 클릭하세요


PHP 중국어 웹사이트