在DataGrid中为Footer添加自定义内容

转载 2006年06月15日 14:27:00

<%@ Page Language="VB" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>

<p>
  <script runat="server">
    Sub Page_Load(Sender As Object, E As EventArgs)
    Dim myConnectionString As String = "Data Source=.;Initial Catalog=NorthWind;User Id=sa;Password=;"
 Dim myConnection As SqlConnection = new SqlConnection(myConnectionString)
 Dim myCommand As SqlCommand = New SqlCommand("select * from Categories", myConnection) 
 Dim myDataReader As SqlDataReader
 Try
    myConnection.Open()
    myDataReader = myCommand.ExecuteReader(CommandBehavior.CloseConnection)
    myDataGrid.DataSource = myDataReader
    myDataGrid.DataBind()
 Catch myException As Exception
    Response.Write("数据错误:" & myException.ToString())
 Finally
    If Not myDataReader Is Nothing Then
        myDataReader.Close()
    End If
 End Try
   
    End Sub

其次:创建OnItemDataBound事件,在OnItemDataBound事件中,我们可以对DataGrid中每行进行数据绑定时进行检测。这里我们只添加Footer部分的内容,因此,我们只检测DataGrid中的Footer部分。下面是 DataGrid中几种ItemTypes类型。

Item Type Description
Header DataGrid控件的Heading部分
Footer DataGrid控件的Footer部分
Item DataGrid控件中每个条目
AlternatingItem DataGrid控件的alternating条目
SelectedItem DataGrid控件的selected条目
EditItem DataGrid控件的可编辑条目
Separator DataGrid控件每个条目之间的分割部分
Pager DataGrid控件的page selection部分

最后:一旦我们检测到当前是Footer部分,就可以添加我们的动态内容。这里我在第二列添加一个链接。

Public Sub myDataGrid_ItemDataBound(sender As Object, e As DataGridItemEventArgs)
   
      '只有类型为footer的时候进行执行
      If(e.Item.ItemType = ListItemType.Footer )
         Dim myHyperLink As HyperLink = new HyperLink()
         If Not Request.QueryString("id") = Nothing Then
             myHyperLink.Text = "添加内容"
             myHyperLink.NavigateURL = "adddetail.aspx?id=" & Request.QueryString("id")
         Else
             myHyperLink.Text = "没有添加内容"
         End If
   
         'Cells从0开始
         e.Item.Cells(1).Controls.Add(myHyperLink)
      End If
   
  End Sub
</script>

下面是aspx页面部分:
<html>
<head>
</head>
<body>
<form runat="server">
    <asp:datagrid id="myDataGrid"
                  runat="server"
                  showfooter="true"
                  onitemdatabound="myDataGrid_ItemDataBound"
                  enableviewstate="false">
    </asp:datagrid>
</form>
</body>
</html>

 

相关文章推荐

Android学习(45) -- 自定义控件(9) 下拉刷新 (添加footer)

样式效果 1、创建底部的布局 layout_footer.xml
  • idiandi
  • idiandi
  • 2016年04月26日 15:56
  • 2480

DataGrid 自定义字段内容

因为DataGrid Web 控件的AutoGenerateColumn 属性预设为True,表示会自动产生数据源中所有的字段。如果我们想自订DataGrid Web 控制所要显示的字段,只要将Aut...

datagrid 基本添加行,删除行,插入行,自定义方法

一、需要引入的文件 二、代码详解 /* 允许编辑单元格 */ $('#contentTable').datagrid().datagrid('enableCellEditing'); /*...

UITableView自定义分割线、改变Header和Footer的背景颜色

自定义分割线 1、去除系统原生separator: self.tableView.separatorColor = [UIColor clearColor];2、在UITableView的协议方法里...

XListview之自定义Header和footer动画

最近看到很多的下拉刷新都是采用的很cute的动画,所以就将XListview改造了一下,做成了一个可以自动下拉刷新以及自动加载更多的东西 好了,废话不多说,先上图: 尾巴: ps...

Nginx的目录文件列表功能,和自定义header和footer

ngx_http_autoindex_module  此模块用于自动生成目录列表,ngx_http_autoindex_module只在 ngx_http_index_module模块未找到索引文件时...

自定义DataGrid分页块完美实现

  • 2007年12月07日 17:55
  • 63KB
  • 下载

easyui datagrid标题拖拽自定义配置

  • 2016年11月26日 16:42
  • 1010KB
  • 下载

easyui datagrid 列的内容超出所定义的列宽时,自动换行

定义表单  nowrap:false 例如: $(function() { $('#dg').datagrid({ title : "视频信息列表", url : "Vi...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:在DataGrid中为Footer添加自定义内容
举报原因:
原因补充:

(最多只允许输入30个字)