65.9K
CodeProject 正在变化。 阅读更多。
Home

运行时具有多个数据源的Grid

starIcon
emptyStarIcon
starIcon
emptyStarIconemptyStarIconemptyStarIcon

1.60/5 (9投票s)

2007年9月10日

CPOL
viewsIcon

31916

本文档描述了如何根据 DataSet 中可用的表在运行时创建 DataGrid。

引言

本文档展示了如何使用代码隐藏 (C# 或 VB.NET) 创建运行时 DataGrid

背景

PlaceHolder Web 服务器控件允许您在页面中放置一个空的容器控件,然后在运行时动态地添加、删除或循环遍历子元素。该控件仅呈现其子元素,它本身没有基于 HTML 的输出。

使用代码

步骤 1

首先为要显示的 DataGrid 创建数据源。使用 SqlDataAdapter 填充 DataSet。现在,我们可以从数据库 'Pubs' 绑定两个表。在 ASPX 页面中放置一个 PlaceHolder

Dim sql as String ="select * from authors select * from publishers"
Dim da As SqlDataAdapter = New SqlDataAdapter(sql, conn)
da.Fill(ds)

现在 DataSet 包含两个表,我们需要将它们绑定到单个页面中的网格。

第二步

在填充 DataSet 后编写以下代码

Dim myGrid As DataGrid
Dim dt As DataTable

For Each dt In ds.Tables
    myGrid = New DataGrid
    myGrid.DataSource = dt
    myGrid.DataBind()
    PlaceHolder1.Controls.Add(myGrid)
Next

当另一个表绑定到 DataSet 时,**无需创建设计代码**。

我们还可以设置 DataGrid 的运行时属性,例如 CSSClass 等。

myGrid.CssClass="grid" (class name of stylesheet)
myGrid.Width = Unit.Percentage(100)
© . All rights reserved.