创建表头固定,表体可滚动的GridView(转)
本方法只需要设置一个GridView的宽度,其它宽度不需要设置。测试环境:IE6,Firefox通过。
C#
<%@ Page Language="C#" AutoEventWireup="true" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
// 计算数据,完全可以从数据看取得
ICollection CreateDataSource( )
{
System.Data.DataTable dt = new System.Data.DataTable();
System.Data.DataRow dr;
dt.Columns.Add(new System.Data.DataColumn("学生班级", typeof(System.String)));
dt.Columns.Add(new System.Data.DataColumn("学生姓名", typeof(System.String)));
dt.Columns.Add(new System.Data.DataColumn("语文", typeof(System.Decimal)));
dt.Columns.Add(new System.Data.DataColumn("数学", typeof(System.Decimal)));
dt.Columns.Add(new System.Data.DataColumn("英语", typeof(System.Decimal)));
dt.Columns.Add(new System.Data.DataColumn("计算机", typeof(System.Decimal)));
for (int i = 0; i < 50; i++)
{
System.Random rd = new System.Random(Environment.TickCount * i); ;
dr = dt.NewRow();
dr[0] = "班级" + i.ToString();
dr[1] = "【孟子E章】" + i.ToString();
dr[2] = System.Math.Round(rd.NextDouble() * 100, 2);
dr[3] = System.Math.Round(rd.NextDouble() * 100, 2);
dr[4] = System.Math.Round(rd.NextDouble() * 100, 2);
dr[5] = System.Math.Round(rd.NextDouble() * 100, 2);
dt.Rows.Add(dr);
}
System.Data.DataView dv = new System.Data.DataView(dt);
return dv;
}
protected void Page_Load( object sender, EventArgs e )
{
if (!IsPostBack)
{
GridView1.Attributes.Add("style", "table-layout:fixed");
GridView1.DataSource = CreateDataSource();
GridView1.DataBind();
}
}
</script>
<script type="text/javascript">
function s()
{
var t = document.getElementById("<%=GridView1.ClientID%>");
var t2 = t.cloneNode(true)
for(i = t2.rows.length -1;i > 0;i--)
t2.deleteRow(i)
t.deleteRow(0)
a.appendChild(t2)
}
window.onload = s
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>创建表头固定,表体可滚动的GridView</title>
</head>
<body>
<form id="Form1" runat="server">
<table>
<tr>
<td>
<div id="a">
</div>
<div style="overflow-y: scroll; height: 200px">
<asp:GridView ID="GridView1" runat="server" Font-Size="12px" BackColor="#FFFFFF"
GridLines="Both" CellPadding="4" Width="560">
<HeaderStyle BackColor="#EDEDED" Height="26px" />
</asp:GridView>
</div>
</td>
</tr>
</table>
</form>
</body>
</html>
VB.NET
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Function CreateDataSource() As ICollection
Dim dt As System.Data.DataTable = New System.Data.DataTable
Dim dr As System.Data.DataRow
dt.Columns.Add(New System.Data.DataColumn("学生班级", GetType(System.String)))
dt.Columns.Add(New System.Data.DataColumn("学生姓名", GetType(System.String)))
dt.Columns.Add(New System.Data.DataColumn("语文", GetType(System.Decimal)))
dt.Columns.Add(New System.Data.DataColumn("数学", GetType(System.Decimal)))
dt.Columns.Add(New System.Data.DataColumn("英语", GetType(System.Decimal)))
dt.Columns.Add(New System.Data.DataColumn("计算机", GetType(System.Decimal)))
Dim i As Integer = 0
While i < 50
Dim rd As System.Random = New System.Random(Environment.TickCount * i)
dr = dt.NewRow
dr(0) = "班级" + i.ToString
dr(1) = "【孟子E章】" + i.ToString
dr(2) = System.Math.Round(rd.NextDouble * 100, 2)
dr(3) = System.Math.Round(rd.NextDouble * 100, 2)
dr(4) = System.Math.Round(rd.NextDouble * 100, 2)
dr(5) = System.Math.Round(rd.NextDouble * 100, 2)
dt.Rows.Add(dr)
System.Math.Min(System.Threading.Interlocked.Increment(i), i - 1)
End While
Dim dv As System.Data.DataView = New System.Data.DataView(dt)
Return dv
End Function
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
If Not IsPostBack Then
GridView1.Attributes.Add("style", "table-layout:fixed")
GridView1.DataSource = CreateDataSource()
GridView1.DataBind()
End If
End Sub
</script>
<script type="text/javascript">
function s()
{
var t = document.getElementById("<%=GridView1.ClientID%>");
var t2 = t.cloneNode(true)
for(i = t2.rows.length -1;i > 0;i--)
t2.deleteRow(i)
t.deleteRow(0)
a.appendChild(t2)
}
window.onload = s
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>创建表头固定,表体可滚动的GridView</title>
</head>
<body>
<form id="Form1" runat="server">
<table>
<tr>
<td>
<div id="a">
</div>
<div style="overflow-y: scroll; height: 200px">
<asp:GridView ID="GridView1" runat="server" Font-Size="12px" BackColor="#FFFFFF"
GridLines="Both" CellPadding="4" Width="560">
<HeaderStyle BackColor="#EDEDED" Height="26px" />
</asp:GridView>
</div>
</td>
</tr>
</table>
</form>
</body>
</html>
转载于:https://www.cnblogs.com/footleg/archive/2008/05/05/1183989.html
创建表头固定,表体可滚动的GridView(转)相关推荐
- table表头固定表体滚动
实际的项目中需要用到弹出框包含表格时,万一表格很长不方便显示,这时就需要滚动表格,那么怎么才能实现呢? 如下,是用纯css实现的滚动表格(但是firefox和360极速模式下存在兼容性问题,有待提高) ...
- antd 设置表头属性_解决react使用antd table组件固定表头后,表头和表体列不对齐以及配置fixed固定左右侧后行高度不对齐...
一.固定表头后表体列和表头不对齐 此问题可能在antd3.24.0版本之前都存在,反正3.16.2版本是存在这个问题的,如果是3.24.0之前的版本估计只能通过修改css样式解决. 按照官网说的: 1 ...
- antd table动态表头_解决react使用antd table组件固定表头后,表头和表体列不对齐以及配置fixed固定左右侧后行高度不对齐...
1.固定表头后表体列和表头不对齐 此问题可能在antd3.24.0版本以前都存在,反正3.16.2版本是存在这个问题的,若是是3.24.0以前的版本估计只能经过修改css样式解决.css 按照官网说的 ...
- table表头固定,底部可滚动
需求:实现table表头固定,表体可滚动 思路: tbody使用display:block,固定高度,并设置over-y:scroll, thead和tr,使用display:table,使用tabl ...
- el-table在有些电脑上显示问题(表头与表体不对齐gutter列导致得)
el-table在个别电脑上得表头与表体不对齐(是因为没有滚动条时表头得gutter列得width为17px引起得) 其中gutterHidden初始默认为false <el-table :cl ...
- 再谈table组件:固定表头和表列
前言 本文介绍内容包括: Element UI 实现表头表列固定思考与总结 translate3d如何实现表头表列固定 书承上文,在前文[Vue进阶]青铜选手,如何自研一套UI库中介绍了Vue组件库的 ...
- 实现固定表头和表列的table组件
前端的table在设置overflow后横向.纵向滚动.但数据比较多时,为了查看方便,希望能在纵向滚动时固定表头,在横向滚动时在左边或右边固定特定表列,这是原生不支持的. 目录 实际效果 设计思路 普 ...
- uniapp 微信小程序 ui-table 表头固定,可缩放,实现
效果图 表头固定,可缩放效果 前言 用到的组件: 使用uniapp内置组件 movable-view和movable-area实现表格缩放 使用uni-table 实现表格渲染(自带多选,没有头固定功 ...
- html table表头说明,HTML table表头固定
HTML table表头固定 说说我在最近项目中碰到的css问题吧,作为问题知识集合总结笔记: table tbody { display: block; height: 200px; overflo ...
最新文章
- git rollback代码都没了_Git使用总结
- [YTU]_2635(P4 游戏中的Human角色)
- mongodb 学习笔记 2 --- 修改器
- jsf集成spring_Spring和JSF集成:导航
- mybatis学习(39):动态sql片段
- Gartner:PaaS 和平台架构领域的 4 大趋势 | 技术头条
- 解决jodconverter 2.2.1版本不支持docx、xlsx、pptx转换成PDF格式异常
- 精品资源:40个实用的 PSD 贴纸模板《下篇》
- LeetCode刷题(28)
- Intel® Math Kernel Library (Intel® MKL)
- Spark SQL 用户自定义函数UDF、用户自定义聚合函数UDAF 教程(Java踩坑教学版)
- Java:用Lambda表达式简化代码一例
- 线性回归 + 基础优化算法 动手学深度学习v2 pytorch
- web SQL注入漏洞
- 主流数据库对比,主流数据库性能、选型对比
- 如何用Java将DWG和DXF文件转换为PDF?看了这篇就懂了
- [渝粤教育] 中山大学 健康评估 参考 资料
- matlab不显示x,y,z轴
- 陕西师范大学第七届程序设计竞赛网络同步赛 D	ZQ的睡前故事(java)
- 基于spark的车辆分析