DataGrid上怎样实现按列排序功能?

szxzwang 2003-10-20 10:58:30
1.DataGrid上怎样实现按列排序功能?
2.DataGrid上怎样实现“上一页”、“下一页”?
最好有例子?
...全文
101 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
haoliqi 2003-10-20
  • 打赏
  • 举报
回复
右击datagrid选属性生成器,列的排序字段设上,在排序事件下写排序代码
DetaSet ds=ee;
Dataview dv=ds.tables[0].defaultview;
dv.sort=e.SortExpression;
Datagrid1.datasource=dv;
Datagrid1.databind();


Datagrid1.currentpageindex=e.newpageindex;
wubike 2003-10-20
  • 打赏
  • 举报
回复

PagerStyle-PrevPageText ="上一页"
PagerStyle-NextPageText ="后一页"

//排序功能
public void DataGrid_Sort(Object sender,DataGridSortCommandEventArgs e)
{
ViewState["SortField"] = (string)e.SortExpression;
BindGrid();
}
Public void BindGrid()
{
DataView vi = (DataView) CreateTable();
vi.Sort = (String)ViewState["SortField"];
score.DataSoure = vi;
score.DataBind();
}

.....
<asp:DataGrid id="score" runat="server"
AutoGenerateColumns ="False"
AllowSorting="True"
OnSortCommand="DataGrid_Sort"
>
<Cloumns>
<asp:BoundColumn HeaderText="学号" SortExpression="ID" DataField="ID" />

......
</Cloumns>

完整的例子,.NET SDK 帮助文件里肯定是有的,自己可以好好看看。
ViewState对象用来保持排序的关键字的值,用于页面级别

guoyan19811021 2003-10-20
  • 打赏
  • 举报
回复
http://xml.sz.luohuedu.net/xml/ShowDetail.asp?id=B12283DE-DB20-4322-ACCC-12724442808A
srj911 2003-10-20
  • 打赏
  • 举报
回复
分页:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<% @import namespace="system.data"%>
<% @import namespace="system.data.oledb"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
</head>
<script language="VB" runat="server">
dim startindex as integer
sub binddata()
dim provider,connstr,sql,database as string
provider="microsoft.jet.oledb.4.0;"
database=server.mappath("chengji.mdb")
connstr="provider="+provider+"data source="+database
sql="select * from fen"
dim cmd as oledbdataadapter
cmd=new oledbdataadapter(sql,connstr)
dim ds as dataset
ds=new dataset
cmd.fill(ds,"fen")
grid1.datasource=ds.tables("fen").defaultview
grid1.databind()
end sub

sub page_load(sender as object,e as eventargs)
if not ispostback then
startindex=0
end if
binddata
end sub
sub changepage(sender as object,e as datagridpagechangedeventargs)
startindex=e.newpageindex*grid1.pagesize
grid1.currentpageindex=e.newpageindex
binddata
end sub
</script>
<body>
<form runat="server">
<asp:datagrid ID="grid1" AllowPaging="true" PageSize="5"
PagerStyle-HorizontalAlign="right"
PagerStyle-NextPageText="下一页"
PagerStyle-PrevPageText="上一页"
OnPageIndexChanged="changepage"
HeaderStyle-BackColor="#aaaadd"
AlternatingItemStyle-BackColor="red"
BorderColor="#990000"
CellPadding="2"
CellSpacing="0" runat="server"/>
</form>
</body>
</html>
srj911 2003-10-20
  • 打赏
  • 举报
回复
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<%@import namespace="system.data"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>排序</title>
</head>
<script language="VB" runat="server">
dim sortfield as string
function createdatasource() as icollection
dim dt as datatable
dim dr as datarow
dim i as integer
dt=new datatable
dt.columns.add(new datacolumn("integervalue",gettype(integer)))
dt.columns.add(new datacolumn("stringvalue",gettype(string)))
dt.columns.add(new datacolumn("currencyvalue",gettype(double)))
for i=1 to 9
dr=dt.newrow()
dr(0)=9-i
dr(1)="item"&i.tostring()
dr(2)=1.23*(i+1)
dt.rows.add(dr)
next
dim dv as dataview=new dataview(dt)
dv.sort=sortfield
createdatasource=dv
end function

sub page_load(sender as object,e as eventargs)
if not ispostback then
if sortfield="" then
sortfield="integervalue"
end if
binddata
end if

end sub

sub grid1_sort(sender as object,e as datagridsortcommandeventargs)
sortfield=e.sortexpression
binddata
end sub

sub binddata()
grid1.datasource=createdatasource()
grid1.databind
end sub
</script>
<body>
<form runat="server">
<asp:datagrid ID="grid1" runat="server"
AllowSorting="true"
OnSortCommand="grid1_sort"
BorderColor="black"
BorderWidth="1"
CellPadding="3"
font-name="verdana"
font-size="8pt"
HeaderStyle-BackColor="#ccccff"
HeaderStyle-ForeColor="black"
AutoGenerateColumns="false">
<columns>
<asp:boundcolumn HeaderText="整型" DataField="integervalue"/>
<asp:boundcolumn HeaderText="字符型" DataField="stringvalue"/>
<asp:boundcolumn HeaderText="货贝型" DataField="currencyvalue"
DataFormatString="{0:c}"
ItemStyle-HorizontalAlign="right"/>
</columns>

</asp:datagrid>
</form>
</body>
</html>
cuike519 2003-10-20
  • 打赏
  • 举报
回复
排序本身不再DataGrid里面进行,是在DataTable或者DataView里面!这要看你绑定的数据源了!
DataTable提供Select方法.DataView提供Filter属性(设置行筛选)!也就是说你可以在Select或者Filter里面设置Order by Fieldname.
翻页的时候只要改变页码重新绑定就可以了!(注意无效页码的产生)
第2章 ASP.NET运行模型
21.如何在页面中应用javascript脚本-示例1
21.如何在页面中应用javascript脚本-示例2
22.如何实现从服务器端向页面动态添加javascript脚本-示例1
22.如何实现从服务器端向页面动态添加javascript脚本-示例2
24.如何处理多页面重定向到同一页面后的返回问题
25.如何用Response.Redirect方法传递汉字
29.如何利用输出缓存技术缓存整个页面
30.如何利用片段缓存技术对用户控件进行缓存
31.如何利用数据缓存技术提高程序的性能
33.如何实现当页面产生错误时重定向到自定义错误界面
35.如何在程序中读写Web.config文件
37.如何使用CSS文件定义控件的样式
38.如何启用和禁用ViewState保存状态信息的功能
39.如何应用IsPostBack控制页面的加载
41.如何使用Trace对象进行跟踪调试(页面级)
42.如何使用#Include语法将文件添加到页面
43.如何使用编程的方式处理异常信息
44.如何将网页错误信息写入事件日志
第3章 常用Web服务控件
46.如何使用Label控件动态显示文本信息
47.如何实现当鼠标移到控件时显示提示信息
48.如何在Web应用程序中实现快捷键功能(使用脚本实现)
48.如何在Web应用程序中实现快捷键功能(使用属性实现)
49.如何设置页面上控件的Tab键顺序
50.如何实现用回车键代替Tab键的功能
51.如何为按钮键添加消息框
52.Button、LinkButton和ImageButton服务控件的区别及应用
54.如何使用CheckBox和CheckBoxList控件(CheckBox示例)
54.如何使用CheckBox和CheckBoxList控件(CheckBoxList示例)
55.如何使用RadioButton和RadioButtonList控件(RadioButton示例)
55.如何使用RadioButton和RadioButtonList控件RadioButtonList示例)
56.如何使用Panel控件操作一组控件
57.如何使用Table控件组织页面的内容
58.如何实现DropDownList控件选项的添加、删除等操作
59.如何实现间接改变DropDownList控件的当前选项
60.如何实现两个或多个DropDownList控件的联动
61.如何实现ListBox控件选项的上移、下移、添加和删除操作
62.如何实现ListBox控件中选项的双击事件
63.如何动态设置ListBox控件中各选项的背景颜色
64.如何在页面中动态创建控件
65.如何为HTML服务器控件的事件添加自定义方法
第4章 验证控件
67.如何使用RequiredFieldValidator控件验证用户是否输入信息
68.如何使用RegularExpressionValidator控件验证E-mail地址和邮编等格式
69.如何使用RangeValidator控件验证输入的信息是否在指定范围内
70.如何使用CompareValidator控件对两个输入控件比较验证
71.如何使用CustomValidator控件自定义验证格式
72.如何使用ValidationSummary控件总结所有验证控件的错误信息
73.如何创建自定义功能的验证控件
74.如何禁用服务器控件的验证功能
75.如何控制页面部分验证控件有效
76.如何实现控件即时验证功能
77.如何使用验证控件综合验证用户注册页面
78.如何验证DataGrid控件的编辑列
81.如何使用验证控件验证日期类型的输入(CompareValidator)
81.如何使用验证控件验证日期类型的输入(CustomerValidator)
81.如何使用验证控件验证日期类型的输入(RegularValidator)
第5章 高级Web控件
82.如何在网页中使用Calendar Web控件显示和选择日期
83.如何在Calendar Web控件中控制个别日的内容及显示
84.如何在Calendar Web控件中控制用户日期选定
86.如何使用XML控件显示XML文件和进行XSLT转换
87.如何使用AdRotator Web控件制作广告发布程序-示例1
87.如何使用AdRotator Web控件制作广告发布程序-示例2
88.如何创建用户控件
89.如何将Web窗体转换成用户控件
90.如何实现动态加载用户控件
92.如何使用TabStrip Web和MultiPage Web控件制作选项卡式页面
93.如何使用Toolbar Web控件制作工具条式页面
94.如何识别Toolbar Web控件中哪个按钮激发的ButtonClick事件
95.如何使用TreeView Web控件
96.如何在TreeView Web控件中动态添加、删除TreeNode节点
100.如何使用TreeView Web控件中的TreeNodeType进行外观控制
101.如何使用TreeView Web控件绑定XML文件-示例1
101.如何使用TreeView Web控件绑定XML文件-示例2
第6章 数据服务控件
103.如何使用Repeater控件显示数据
104.如何使用Repeater控件的模板
105.如何实现Repeater控件的分页
106.如何使用DataList控件显示数据
107.如何实现选择DataList控件中的条目后显示该条目的详细信息
108.如何实现DataList控件的编辑功能
109.如何对DataList控件使用样式
110.如何在DataList控件中创建多个列
111.如何实现DataList控件的分页功能
112.如何在DataGrid中添加自动编号的功能
113.如何控制DataGrid绑定列绑定的数据类型为日期的显示格式
114.如何把DataGrid中某一列的统计值显示在页脚中
115.如何在DataGrid中让不同条件的行显示不同的背景颜色
116.如何在DataGrid实现分页功能
117.如何实现鼠标移到DataGrid控件的某一行时改变该行的背景
118.如何在DataGrid控件中实现自定义分页功能
119.如何在DataGrid中弹出一个详细信息窗口-示例1
119.如何在DataGrid中弹出一个详细信息窗口-示例2
120. 如何在DataGrid控件中添加CheckBox控件列
121.如何为DataGrid控件中的删除列添加确认框
122.如何使用DataGrid控件实现主细表
123.如何实现DataGrid控件的双向排序
124.如何动态的显示·隐藏DataGrid控件的某一列
125.如何实现DataGrid控件中DropDownList控件的绑定
126.如何在DataGrid控件中实现数据项的编辑、更新、取消
127.如何在DataGrid控件中删除最后一页的最后一记录
128.如何把数据库中的数据以Excel文件的格式在显示浏览器中
129.如何给DataGrid控件添加个标题并实现分类显示
130.如何实现DataGrid控件中DropDownList控件的联动
131.DataGrid控件使用综合举例
第7章 数据绑定技术
132.如何单值绑定到控件的属性
133.如何将DataTable绑定到DataGrid Web控件
134.如何将DataSet绑定到DataGrid Web控件
135.如何将DataView绑定到DataGrid Web控件
136.如何将DataReader绑定到DataGrid Web控件
137.如何将表中的列绑定到DropDownList Web控件
138.如何使用DataBinder.Eval()方法进行数据绑定
139.如何将ArrayList绑定到ListBox Web控件
140.如何将Hashtable绑定到RadioButtonList Web控件
141.如何将XML作为数据源绑定到控件
第8章 数据库设计
143.ASP.NET应用程序如何实现与SQL Server数据库的连接
144.ASP.NET应用程序如何实现与ACCESS数据库的连接
146.如何使用ADO.NET在数据库执行SQL语句
147.如何使用DataReader快速访问SQL Server数据
148.如何使用DataAdapter将数据填充到DataSet并显示出来
149.如何使用DataTable对象存储数据库表
150.如何对DataTable进行检索和排序
151.如何使用DataView进行数据排序和检索
152.如何在DataSet的DataTable间建立父子表关系
154.如何实现SQL Server数据库操作中的异常捕捉和处理
155.如何将数据库中的数据填充到XML文件中
157.如何使用Web.config配置数据库连接字符串
161.如何编写访问数据库的通用代码
162.如何在SQL Server数据库中编程获取用户表的数目和名称
163.如何获取SQL Server服务器端所有数据库列表
164.如何保存图片文件到SQL Server数据库
165.如何将数据库中保存的图片显示到页面中
166.如何在插入记录后获得记录的标识号
167.如何解决ADO.NET访问ACCESS数据库出现“操作必须使用一个可更新的查询”的问题
168.如何从EXCEL文件中读取数据
169.如何备份和恢复数据库
第9章 ASP.NET安全策略
第10章 常用功能及函数集
180.如何在ASP.NET中获得客户端IP地址
181.如何取得一定范围内的随机数
182.如何取得文件的扩展名示例一
182.如何取得文件的扩展名示例二
183.如何把字符串型数据转换为整型
184.如何取得当前系统时间
185.如何取得指定的年份中有多少天
186.如何取得客户端的鼠标坐标并反馈到服务器端
187.如何使用JMAIL组件实现邮件的发送
187.如何使用JMAIL组件实现邮件的接收
188.如何使用ASP.NET中的类库实现邮件的发送
189.如何生成图片的缩略图
190.如何在ASP.NET中动态的创建柱状和饼状统计图
192.如何判断上传图片的高度和宽度
193.如何使用DESCryptoServiceProvider类对数据或者文件进行加密解密
194.如何统计在线人数
195.如何在ASP.NET实现验证码
196.如何在本地取得指定网页的源代码
197.如何在ASP.NET中做一个日期选择器
198.如何在弹出对话框的同时保持页面的显示
199.如何点击按钮弹出新页面,输入数据后返回并且不刷新页面
第11章 文件操作
200.如何读取、修改文本文件
201.如何在ASP.NET中实现文件的上传
202.如何在ASP.NET中实现多文件的上传
203. 如何取得指定目录下的文件列表
204.如何在ASP.NET中创建日志文件
205.如何取得系统日志,并把日志信息写到文本文件中
206.如何在ASP.NET中创建、删除、复制文件
207.如何动态的创建HTML文件
第12章 XML相关处理技术

62,025

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧