BaseDataList.DataSource プロパティ
アセンブリ: System.Web (system.web.dll 内)

<BindableAttribute(True)> _ <ThemeableAttribute(False)> _ Public Overridable Property DataSource As Object
Dim instance As BaseDataList Dim value As Object value = instance.DataSource instance.DataSource = value
[BindableAttribute(true)] [ThemeableAttribute(false)] public virtual Object DataSource { get; set; }
[BindableAttribute(true)] [ThemeableAttribute(false)] public: virtual property Object^ DataSource { Object^ get (); void set (Object^ value); }
/** @property */ public Object get_DataSource () /** @property */ public void set_DataSource (Object value)
このコントロールにデータを提供するために使用する値のコレクションを格納している IEnumerable または IListSource。既定値は null 参照 (Visual Basic では Nothing) です。


DataSource プロパティを使用して、データ リスト コントロールに連結する値のソースを指定します。データ ソースは、BaseDataList クラスから派生したコントロールにバインドする System.Collections.IEnumerable インターフェイス (System.Data.DataView、System.Collections.ArrayList、System.Collections.Hashtable など) または IListSource インターフェイスを実装したオブジェクトである必要があります。DataSource プロパティを設定する場合は、データ バインディングを実行するコードを手動で記述する必要があります。
DataSource プロパティで指定されているデータ ソースが複数のデータ ソースを含む場合は、DataMember プロパティを使用して、コントロールにバインドする特定のソースを指定します。たとえば、複数のテーブルを持つ System.Data.DataSet オブジェクトがある場合は、コントロールにバインドするテーブルを指定する必要があります。データ ソースを指定したら、DataBind メソッドを使用して、データ ソースをコントロールに連結します。
また、DataSourceID プロパティを使用して、データ ソース コントロールで表されたデータ ソースへのバインディングを自動的に行うことができます。DataSourceID プロパティを設定すると、データ リスト コントロールは、指定したデータ ソース コントロールに自動的にバインドされます。DataBind メソッドを明示的に呼び出すコードを記述する必要はありません。
DataSource プロパティと DataSourceID プロパティの両方に値を指定した場合、ASP.NET はデータ ソースを解決できず、System.Web.HttpException 例外がスローされます。
このプロパティを、テーマまたはスタイル シート テーマを使用して設定することはできません。詳細については、ThemeableAttribute、ASP.NET のテーマとスキンの概要 の各トピックを参照してください。

DataSource プロパティを使用して、DataGrid コントロールにバインドするデータ ソースを指定する方法を、次のコード例に示します。
<%@ Page Language="VB" AutoEventWireup="True" %> <%@ Import Namespace="System.Data" %> <html> <script language="VB" runat="server"> Function CreateDataSource() As ICollection Dim dt As New DataTable() Dim dr As DataRow dt.Columns.Add(New DataColumn("IntegerValue", GetType(Int32))) dt.Columns.Add(New DataColumn("StringValue", GetType(String))) dt.Columns.Add(New DataColumn("CurrencyValue", GetType(Double))) Dim i As Integer For i = 0 To 8 dr = dt.NewRow() dr(0) = i dr(1) = "Item " + i.ToString() dr(2) = 1.23 *(i + 1) dt.Rows.Add(dr) Next i Dim dv As New DataView(dt) Return dv End Function 'CreateDataSource Sub Page_Load(sender As Object, e As EventArgs) If Not IsPostBack Then ' Load this data only once. ItemsGrid.DataSource = CreateDataSource() ItemsGrid.DataBind() End If End Sub 'Page_Load </script> <body> <form runat=server> <h3>DataGrid Example</h3> <b>Product List</b> <asp:DataGrid id="ItemsGrid" BorderColor="black" BorderWidth="1" CellPadding="3" AutoGenerateColumns="true" runat="server"> <HeaderStyle BackColor="#00aaaa"> </HeaderStyle> </asp:DataGrid> </form> </body> </html>
<%@ Page Language="C#" AutoEventWireup="True" %> <%@ Import Namespace="System.Data" %> <html> <script language="C#" runat="server"> ICollection CreateDataSource() { DataTable dt = new DataTable(); DataRow dr; dt.Columns.Add(new DataColumn("IntegerValue", typeof(Int32))); dt.Columns.Add(new DataColumn("StringValue", typeof(string))); dt.Columns.Add(new DataColumn("CurrencyValue", typeof(double))); for (int i = 0; i < 9; i++) { dr = dt.NewRow(); dr[0] = i; dr[1] = "Item " + i.ToString(); dr[2] = 1.23 * (i + 1); dt.Rows.Add(dr); } DataView dv = new DataView(dt); return dv; } void Page_Load(Object sender, EventArgs e) { if (!IsPostBack) { // Load this data only once. ItemsGrid.DataSource= CreateDataSource(); ItemsGrid.DataBind(); } } </script> <body> <form runat=server> <h3>DataGrid Example</h3> <b>Product List</b> <asp:DataGrid id="ItemsGrid" BorderColor="black" BorderWidth="1" CellPadding="3" AutoGenerateColumns="true" runat="server"> <HeaderStyle BackColor="#00aaaa"> </HeaderStyle> </asp:DataGrid> </form> </body> </html>

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- BaseDataList.DataSource プロパティのページへのリンク