Repeater.DataSource 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取或设置为填充列表提供数据的数据源。
public:
virtual property System::Object ^ DataSource { System::Object ^ get(); void set(System::Object ^ value); };
[System.ComponentModel.Bindable(true)]
public virtual object DataSource { get; set; }
[<System.ComponentModel.Bindable(true)>]
member this.DataSource : obj with get, set
Public Overridable Property DataSource As Object
属性值
IEnumerable 或 IListSource 对象,包含用于为此控件提供数据的值的集合。 默认值是 null
。
- 属性
例外
指定的 DataSource 对象不是 Repeater 控件所支持的数据源。
无法解析数据源,因为对 DataSource 属性和 DataSourceID 属性指定了同一个值。
示例
以下示例演示如何在加载页面时指定DataSourceRepeater控件。
<%@ 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>Repeater Example</title>
<script runat="server">
void Page_Load(Object Sender, EventArgs e) {
if (!IsPostBack) {
ArrayList values = new ArrayList();
values.Add("Apple");
values.Add("Orange");
values.Add("Pear");
values.Add("Banana");
values.Add("Grape");
// Set the DataSource of the Repeater.
Repeater1.DataSource = values;
Repeater1.DataBind();
}
}
</script>
</head>
<body>
<h3>Repeater Example</h3>
<form id="form1" runat="server">
<b>Repeater1:</b>
<br />
<asp:Repeater id="Repeater1" runat="server">
<HeaderTemplate>
<table border="1">
</HeaderTemplate>
<ItemTemplate>
<tr>
<td> <%# Container.DataItem %> </td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
<br />
</form>
</body>
</html>
<%@ 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>Repeater Example</title>
<script runat="server">
Sub Page_Load(Sender As Object, e As EventArgs)
If Not IsPostBack Then
Dim values As New ArrayList()
values.Add("Apple")
values.Add("Orange")
values.Add("Pear")
values.Add("Banana")
values.Add("Grape")
' Set the DataSource of the Repeater.
Repeater1.DataSource = values
Repeater1.DataBind()
End If
End Sub
</script>
</head>
<body>
<h3>Repeater Example</h3>
<form id="form1" runat="server">
<b>Repeater1:</b>
<br />
<asp:Repeater id="Repeater1" runat="server">
<HeaderTemplate>
<table border="1">
</HeaderTemplate>
<ItemTemplate>
<tr>
<td> <%# Container.DataItem %> </td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
<br />
</form>
</body>
</html>
注解
使用此属性指定要填充 Repeater 控件的数据源。 DataSource可以是用于访问数据库、数组System.Collections.ArrayList或对象IListSource的任何System.Collections.IEnumerable集合System.Data.DataView。 设置 DataSource 属性时,必须手动编写代码以绑定到数据源。
如果属性指定的 DataSource 数据源包含多个数据源,请使用该 DataMember 属性指定要绑定到控件的特定源。 例如,如果有多个 System.Data.DataSet 表,则必须指定要绑定到控件的表。 指定数据源后,使用 DataBind 该方法将数据源绑定到控件。
或者,可以使用 DataSourceID 该属性自动绑定到数据源控件所表示的数据源。 设置 DataSourceID 属性时,控件 Repeater 会自动绑定到指定的数据源控件。 无需编写显式调用 DataBind 该方法的代码,除非动态更改控件的属性 Repeater 。
如果为DataSource属性和DataSourceID属性指定了值,则 ASP.NET 无法解析数据源并引发 aSystem.Web.HttpException。