分享

在ASP.Net中创建动态表格

 趋明 2012-03-13
 
发布于:软件开发网 来源: 作者:佚名 时间:2009-01-15 点击:

If IsNothing(Session("mTable")) Then
SelectTable = CreateTable()
Session("mTable") = SelectTable
SetText()
Else
SelectTable = Session("mTable")
End If
End Sub
Private Function CreateTable() As DataTable
Dim dt As New DataTable()
Dim dr As DataRow
dt.Columns.Add(New DataColumn("ID", GetType(String)))
dt.Columns.Add(New DataColumn("Name", GetType(String)))
' dt.Columns(0).ColumnName = "系号"
' dt.Columns(1).ColumnName = "名称"
Return dt
End Function
End Class

  该类超越 Page 的 OnLoad 方法 (类似于实施 Page_Load),将 建立一个临时表并巧妙地利用Session在加载页面时保证仅执行一次。与其它一般页面一样,确定来访者人数。


  第 2 步: 带有动态绑定的DataGrid

  创建带有动态绑定的DataGrid视图的一个方法就是一个DataGrid来显示不同的数据表格的内容。这里有个必须解决的问题,就是不同的表在一个表格中怎样绑定?如何确定表的字段,特别是表的英文字段怎样变成中文?大多数的方法是用绑定字段方法实现,在绑定字段后改变标题,这种方法是不可取的。一般不能实现动态绑定,因在绑定字段时必须先申明DataGrid,这里,我们是不允许申明二个以上的DataGrid。正确的方法是在用表绑定DataGrid前临时改变表的字段名。下面就是实现的方法

软件开发网

  页包含对DataGrid 的数据绑定。DataGrid 用于显示图书和档案的内容。与第 1 步相同, DataGrid 包含一个针对要显示的列的定义,以及用于为列、行和总体控制提供可视格式化的样式属性设置。在绑定之前先根据用户的选择进行查询。查询内容是不变化的,我们通过SetText过程来动态设置标题。在查询前先生成查询语句,通过查询语句改变其字段名,同时进行动态的模糊查询。这里要说明的是页面是不能保留数据的,所以我们用到了应用对象Application来保留数据。

  Step2aPage.vb 包含支持详细资料页面的代码。

Step2aPage.vb:

Imports System.DBNull
Imports System.Data
Imports System.Data.SqlClient
Imports System.Data.OleDb
Imports System.DateTime
Imports DataAccess

软件开发网

Public Class Borrow
Inherits System.Web.UI.Page
Public DB As New OleDataAccess()
Dim myDataSet As New DataSet()
Dim SelectTable As New DataTable()
Dim SelectView As New DataView()

Private Sub SetText()
Select Case Application("Index")
Case 0
lblFind1.Text = "检索号 "
lblFind2.Text = "图书分类"
lblFind3.Text = "图书名称"
lblFind4.Text = "分类号"
lblFind5.Text = "作者"
lblFind6.Text = "有效性"
Case 1
lblFind1.Text = "编号 "
lblFind2.Text = "卷册名称"
lblFind3.Text = "设计专业代码"
lblFind4.Text = "专业代码"
lblFind5.Text = "馆藏号"
lblFind6.Text = "负责人 "
Case 2
End Select
End Sub

http://www.

Private Sub Data2bind()
DataGrid2.DataSource = SelectTable.DefaultView
DataGrid2.DataBind()
End Sub

Private Sub LinkButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles LinkButton1.Click
Application("Index") = 0
SetText()
End Sub

http://www.

Private Sub LinkButton2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles LinkButton2.Click
Application("Index") = 1

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多