Latest web development tutorials

عناصر تحكم ASP.NET Datalist على

Datalist على السيطرة، على غرار سيطرة مكرر، وتستخدم لتكرار القائمة إظهار الربط عناصر في هذه السيطرة. ومع ذلك، فإن Datalist على التحكم الافتراضي لإضافة جدول إلى عنصر البيانات.


بيانات ربط السيطرة Datalist على

Datalist على السيطرة، على غرار سيطرة مكرر، وتستخدم لتكرار القائمة إظهار الربط عناصر في هذه السيطرة. ومع ذلك، فإن Datalist على التحكم الافتراضي لإضافة جدول إلى عنصر البيانات. قد تكون ملزمة Datalist على السيطرة على جدول قاعدة بيانات، ملف XML، أو قائمة أخرى من العناصر. هنا، سوف نظهر كيفية ربط ملف XML إلى عنصر تحكم Datalist على.

في هذا المثال، سوف نستخدم الوثيقة التالية XML ( "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: cdcatalog.xml

أولا، استيراد "System.Data" مساحة الاسم. نحن بحاجة إلى هذا مساحة للعمل مع الكائنات DataSet. يتم تضمين التعليمات التالية في الجزء العلوي من صفحة .aspx:

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

بعد ذلك، إنشاء DataSet لملف XML، وعندما الصفحة الأحمال الأولى DataSet هذه XML ملف التحميل:

<script runat="server">
sub Page_Load
if Not Page.IsPostBack then
dim mycdcatalog=New DataSet
mycdcatalog.ReadXml(MapPath("cdcatalog.xml"))
end if
end sub

ثم نحن إنشاء عنصر تحكم Datalist على في صفحة .aspx. <HeaderTemplate> يتم تقديم محتوى العنصر الأول ومرة ​​واحدة فقط في الإخراج، و<ItemTemplate> محتويات عنصر المقابلة إلى DataSet كل "السجل" ويتكرر، وأخيرا، <FooterTemplate> محتوى عنصر الناتج تظهر مرة واحدة فقط:

<html>
<body>

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

<HeaderTemplate>
...
</HeaderTemplate>

<ItemTemplate>
...
</ItemTemplate>

<FooterTemplate>
...
</FooterTemplate>

</asp:DataList>
</form>

</body>
</html>

ثم نضيف البرنامج النصي لإنشاء DataSet، ويربط بيانات mycdcatalog لسيطرة Datalist على. ثم تحتوي على رأس <HeaderTemplate>، الذي يحتوي على البيانات التي سيتم عرض العناصر <ItemTemplate> وتحتوي على نص <FooterTemplate> لملء عنصر تحكم Datalist على. لاحظ أنه يمكنك تعيين 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"
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>

مظاهرة >>

استخدام أنماط

يمكنك أيضا إضافة إلى نمط السيطرة 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>

مظاهرة >>

استخدام <AlternatingItemTemplate>

يمكنك إضافة <ItemTemplate> العنصر إلى <AlternatingItemTemplate> عنصر يستخدم لوصف مظهر بالتناوب صفوف من الانتاج. يمكنك إضافة أنماط إلى بيانات <AlternatingItemTemplate> منطقة مراقبة 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>
&copy; Hege Refsnes
</FooterTemplate>

</asp:DataList>
</form>

</body>
</html>

مظاهرة >>