ASP.NET Repeater Control คอนโทรล Repeater ใช้สำหรับแสดงข้อมูลในรูปแบบของ Loop เช่น ข้อมูลจาก DataReader,DataSet หรือ DataTable
![ASP.NET Repeater Control ASP.NET Repeater Control](https://www.thaicreate.com/upload/tutorial/asp.net-repeater1.jpg?v=1001)
![ASP.NET Repeater Control ASP.NET Repeater Control](https://www.thaicreate.com/upload/tutorial/asp.net-repeater2.jpg?v=1001)
Framework : 1,2,3,4
Syntax
<asp:Repeater ID="[Name]" runat="server"></asp:Repeater>
Template
<HeaderTemplate>
// ส่วนหัว
</HeaderTemplate>
<AlternatingItemTemplate>
// สลับระหว่าง Rows
</AlternatingItemTemplate>
<ItemTemplate>
// ส่วนของการแสดงผลโหมดปกติ
</ItemTemplate>
<FooterTemplate>
// ส่วนล่างของการแสดงผล
</FooterTemplate>
<SeparatorTemplate>
// ส่วนของการแยกข้อมูลระหว่าง Rows
</SeparatorTemplate>
Event
Event เป็นตัวควบคุมเหตุการณ์ต่าง ๆ ของ Repeater ซึ่งในบทเรียนนี้ผมได้ยกตัวอย่างการใช้ Event ต่าง ๆ หลายตัว และ Event ที่ใช้อยู่ประจำเช่น
- ItemCreated เมื่อ Repeater ทำการ Created หรือเสร็จสิ้น
- ItemDataBound เมื่อ Repeater มีการ Bound ข้อมูลในแต่ล่ะ Rows
- ItemCommand เมื่อ Repeater มีการคลิกทำคำสั่งต่าง ๆ
Handles
การกำหนด Event Handles สามารถกำหนดได้ 2 รูปแบบครับ คือกำหนดในส่วนของ Tag Repeater หรือ กำหนดในส่วนของ Event Handles ของ Sub หรือ Function
1. กำหนดในส่วนของ Tag Repeater
<asp:Repeater id="myRepeater" runat="server" OnDataBound="myRepeater_DataBound"></asp:Repeater>
<script runat="server">
Sub myRepeater_DataBound(sender As Object, e As RepeaterItemEventArgs)
End Sub
</script>
2. กำหนดในส่วนของ Sub หรือ Function
<asp:Repeater id="myRepeater" runat="server></asp:Repeater>
Private Sub myRepeater_DataBound(ByVal sender As Object, ByVal e As RepeaterItemEventArgs) Handles myRepeater.DataBound
End Sub
Declarative Syntax
<asp:Repeater
DataMember="string"
DataSource="string"
DataSourceID="string"
EnableTheming="True|False"
EnableViewState="True|False"
ID="string"
OnDataBinding="DataBinding event handler"
OnDisposed="Disposed event handler"
OnInit="Init event handler"
OnItemCommand="ItemCommand event handler"
OnItemCreated="ItemCreated event handler"
OnItemDataBound="ItemDataBound event handler"
OnLoad="Load event handler"
OnPreRender="PreRender event handler"
OnUnload="Unload event handler"
runat="server"
Visible="True|False"
>
<AlternatingItemTemplate>
<!-- child controls -->
</AlternatingItemTemplate>
<FooterTemplate>
<!-- child controls -->
</FooterTemplate>
<HeaderTemplate>
<!-- child controls -->
</HeaderTemplate>
<ItemTemplate>
<!-- child controls -->
</ItemTemplate>
<SeparatorTemplate>
<!-- child controls -->
</SeparatorTemplate>
</asp:Repeater>
สำหรับการใช้งาน Repeater ในรูปแบบต่าง ๆ สามารถศึกษาได้จากหัวข้อถัดไปครับ