1. Trang chủ
  2. » Công Nghệ Thông Tin

Tài liệu Binding Complex Data to Web Forms Controls doc

3 355 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Binding complex data to web forms controls
Tác giả Team LiB
Thể loại recipe
Định dạng
Số trang 3
Dung lượng 15,05 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

[ Team LiB ]Recipe 7.2 Binding Complex Data to Web Forms Controls Problem You want to bind multiple columns in multiple records to an ASP.NET control.. The Web Forms page sample code d

Trang 1

[ Team LiB ]

Recipe 7.2 Binding Complex Data to Web Forms Controls

Problem

You want to bind multiple columns in multiple records to an ASP.NET control

Solution

Set the control's advanced properties (see Table 7-1) before calling DataBind( )

The Web Forms page sample code defines the ListBox that is populated with data by the code-behind page logic The code for the Web Forms page is shown in Example 7-3

Example 7-3 File: ADOCookbookCS0702.aspx

<asp:ListBox id="categoriesListBox" style="Z-INDEX: 102; LEFT: 88px;

POSITION: absolute; TOP: 64px" runat="server" Width="184px"

Height="216px">

</asp:ListBox>

The code-behind contains one event handler:

Page.Load

Fills a DataTable with the CategoryID and CategoryName from the Categories table in the Northwind sample database The ListBox server control is bound to the DataTable

The C# code for the code-behind is shown in Example 7-4

Example 7-4 File: ADOCookbookCS0702.aspx.cs

// Namespaces, variables, and constants

using System;

using System.Configuration;

using System.Data;

using System.Data.SqlClient;

//

private void Page_Load(object sender, System.EventArgs e)

{

Trang 2

// Create a DataAdapter and use it to retrieve ID and Name

// for all categories

String sqlText = "SELECT CategoryID, CategoryName FROM Categories " +

"ORDER BY CategoryName";

SqlDataAdapter da = new SqlDataAdapter(sqlText,

ConfigurationSettings.AppSettings["DataConnectString"]);

DataTable table = new DataTable("Categories");

da.Fill(table);

// Bind the table to the list box control

categoriesListBox.DataSource = table.DefaultView;

categoriesListBox.DataValueField = "CategoryID";

categoriesListBox.DataTextField = "CategoryName";

categoriesListBox.DataBind( );

}

Discussion

Complex data binding describes binding a multi-record control to multiple records in a data source The DataGrid, DataList, and ListBox controls are examples of controls that support complex data binding

Each control that supports complex data binding exposes a set of properties, which are

slightly different for each control, that control the binding These properties are described

in Table 7-1

Table 7-1 Complex data-binding properties Property Description

DataSource

Gets or sets the data source that the control is displaying data for

Valid data sources include DataTable, DataView, DataSet, DataViewManager, or any object that implements the IEnumerable interface

DataMember

Gets or sets the table in the data source to bind to the control You can use this property if the data source contains more than one table—a DataSet, for example

DataKeyField

Gets or sets the key field in the data source This allows the key field for a listing control to be stored and later accessed without displaying

it in the control

DataValueField Gets or sets the field in the data source that provides the value for the

Trang 3

control when an item is selected

DataTextField Gets or sets the field in the data source that provides the display value

for the control when an item is selected

After the properties appropriate to the control are set, call the DataBind( ) method of the control or of the Page to bind the data source to the server control

[ Team LiB ]

Ngày đăng: 26/01/2014, 10:20

TỪ KHÓA LIÊN QUAN