Repeater.DataBind メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
指定したデータ ソースに Repeater コントロールとそのすべての子コントロールをバインドします。
public:
override void DataBind();
public override void DataBind ();
override this.DataBind : unit -> unit
Public Overrides Sub DataBind ()
例
次のコード例では、カスタム サーバー コントロール内のメソッドを DataBind オーバーライドして、カスタム サーバー コントロールでデータ バインディング イベントを常に発生させる方法を Repeater 示します。
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.CS.Controls" Assembly="Samples.AspNet.CS" %>
<%@ Page Language="C#" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Custom Repeater - DataBind - C# Example</title>
<script language="C#" runat="server">
void Page_Load(Object Sender, EventArgs e)
{
if (!IsPostBack)
{
ArrayList values = new ArrayList();
values.Add(new PositionData("Microsoft", "Msft"));
values.Add(new PositionData("Intel", "Intc"));
values.Add(new PositionData("Dell", "Dell"));
Repeater1.DataSource = values;
Repeater1.DataBind();
}
}
public class PositionData
{
private string name;
private string ticker;
public PositionData(string name, string ticker)
{
this.name = name;
this.ticker = ticker;
}
public string Name
{
get
{
return name;
}
}
public string Ticker
{
get
{
return ticker;
}
}
}
</script>
</head>
<body>
<form id="Form1" method="post" runat="server">
<h3>Custom Repeater - DataBind - C# Example</h3>
<aspSample:CustomRepeaterDataBind id="Repeater1" runat="server">
<HeaderTemplate>
<table border="1" cellpadding="4" cellspacing="0">
<tr>
<th>Company</th>
<th>Symbol</th>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td> <%# DataBinder.Eval(Container.DataItem, "Name") %></td>
<td> <%# DataBinder.Eval(Container.DataItem, "Ticker") %></td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</aspSample:CustomRepeaterDataBind>
</form>
</body>
</html>
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.VB.Controls" Assembly="Samples.AspNet.VB" %>
<%@ Page Language="VB" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Custom Repeater - DataBind - VB.NET Example</title>
<script language="VB" runat="server">
Sub Page_Load(Sender As Object, e As EventArgs)
If Not IsPostBack Then
Dim values As New ArrayList()
values.Add(New PositionData("Microsoft", "Msft"))
values.Add(New PositionData("Intel", "Intc"))
values.Add(New PositionData("Dell", "Dell"))
Repeater1.DataSource = values
Repeater1.DataBind()
End If
End Sub
Public Class PositionData
Private myName As String
Private myTicker As String
Public Sub New(newName As String, newTicker As String)
Me.myName = newName
Me.myTicker = newTicker
End Sub
Public ReadOnly Property Name() As String
Get
Return myName
End Get
End Property
Public ReadOnly Property Ticker() As String
Get
Return myTicker
End Get
End Property
End Class
</script>
</head>
<body>
<form id="Form1" method="post" runat="server">
<h3>Custom Repeater - DataBind - VB.NET Example</h3>
<aspSample:CustomRepeaterDataBind id="Repeater1" runat="server" >
<HeaderTemplate>
<table border="1" cellpadding="4" cellspacing="0">
<tr>
<th>Company</th>
<th>Symbol</th>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td> <%# DataBinder.Eval(Container.DataItem, "Name") %></td>
<td> <%# DataBinder.Eval(Container.DataItem, "Ticker") %></td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</aspSample:CustomRepeaterDataBind>
</form>
</body>
</html>
using System.Web;
using System.Security.Permissions;
namespace Samples.AspNet.CS.Controls
{
[AspNetHostingPermission(SecurityAction.Demand, Level=AspNetHostingPermissionLevel.Minimal)]
public sealed class CustomRepeaterDataBind : System.Web.UI.WebControls.Repeater
{
public override void DataBind()
{
// Raise the DataBinding event.
this.OnDataBinding(System.EventArgs.Empty);
}
}
}
Imports System.Web
Imports System.Security.Permissions
Namespace Samples.AspNet.VB.Controls
<AspNetHostingPermission(SecurityAction.Demand, Level:=AspNetHostingPermissionLevel.Minimal)> _
Public NotInheritable Class CustomRepeaterDataBind
Inherits System.Web.UI.WebControls.Repeater
Public Overrides Sub DataBind()
' Raise the DataBinding event.
Me.OnDataBinding(System.EventArgs.Empty)
End Sub
End Class
End Namespace
注釈
このメソッドを DataBind 使用して、プロパティで指定されたデータ ソースを DataSource コントロールに Repeater バインドします。 データ ソースをコントロールに Repeater バインドすると、データ ソース内の情報がコントロールに表示されます。
この DataBind メソッドは、データ ソース内の情報が更新された後に、データ ソースとデータリスト コントロールを同期するためにも一般的に使用されます。 これにより、データ ソースの変更をデータ リスト コントロールでも更新できます。
コントロールのデータ ソース Repeater がプロパティによって DataSourceID 指定されている場合は、メソッドを明示的に呼び出す DataBind 必要はありません。 ASP.NET は、このメソッドを自動的に呼び出して、指定したデータ ソース コントロールをコントロールにRepeaterバインドします。