关于DataGrid,和GridView这俩控件的N多问题,和解决方法!

ztwz 2006-04-07 06:46:45
不好意思骗大家进来,我是来提问的,解决方法靠大家帮我解疑啦!
问题1:在DataGrid或GridView中,自定义模板里添加button,要怎么在代码中更改button的属性?比如button的visible属性或text.
问题2:在DataGrid或GridView中,当输入文字很长的时候怎么控制文本自动转行!
问题3:GridView中怎么自动分页,在这之前这个问题偶以问过,不过搞了一天还是没搞出来,偶用的是GridView+ObjectDataSource绑定SQL数据库,偶太笨,搞一天没搞出来,这几个问题快把我逼疯了!
请大哥大姐们行行好,帮我解答一下!
...全文
245 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
ztwz 2006-04-08
  • 打赏
  • 举报
回复
。。。。少写一句,不是自动分页,是自定义分页!
就是每次只读取一个页面里的数据,点下一页的时候才读取后面的数据!不是一次把表里的装到
DataSet里的!
ztwz 2006-04-08
  • 打赏
  • 举报
回复
。。。。。。。
我随便托一个控件就扔网页里了,偶也没关心用SqlDataSource来绑定和ObjectDataSource的区别。主要是想自定义分页去了,没太在意这两控件,能绑定上就行!
偶要的是自定义分页,是每次只从数据库里读出一页数据的内容,只设置AllowPaging为true他是自动分页,
---------------------------------------------------------------
偶现在用SqlDataSource绑定了,里面用的是储存过程,每页显示3条数据,但是GridView下面的分页数字不会显示出来。他认为我只有三条数据,所以不显示!要怎么让GridView知道我表里的总数据有多少行?GridView没有DataGrid里的VirtualItemCount属性,AllowPaging属性我也设为true的了!
这是偶的存储过过程
create proc [GetPage]
@pageindex int,
@pagesize int,
@recordcount int out,
@pagecount int out
as
select @recordcount=count(*)from data
set @pagecount=ceiling(@recordcount*1.0/@pagesize)
declare @sqlstr nvarchar(1000)

if @pageindex=0 or @pagecount<=1
set @sqlstr=N'select top'+str(@pagesize)+'id,username from data order by id desc'
else if @pageindex=@pagecount-1

set @sqlstr=N' select *from(select top'+str(@recordcount-@pagesize*@pageindex)+
'id,username from data orde by id asc) temptable order by id desc'
else
set @sqlstr=N' select top'+str(@pagesize)+'* from (select top'+str(@recordcount-@pagesize*@pageindex)+
'id,username from data order by id asc) temptable order by id desc'
exec(@sqlstr)
go
cat_hsfz 2006-04-08
  • 打赏
  • 举报
回复
2.换行的话,可以在Template里面通过<div>之类的东西的CSS的with属性来限宽。

3.直接把AllowPaging设置为true就是了。

不过奇怪你为什么用ObjectDataSource来帮定SQL?
artak 2006-04-07
  • 打赏
  • 举报
回复
1.GridView+SqlDataSouce,然后把分页勾上就可以分页了,一句代码都不用打
2.代码方式
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
BindData();
}

antiking 2006-04-07
  • 打赏
  • 举报
回复
AllowPaging="True"
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
}
lw7210 2006-04-07
  • 打赏
  • 举报
回复
你选取自动分页,它就会自动分啊!
ztwz 2006-04-07
  • 打赏
  • 举报
回复
顶一下!
谢谢楼上的。
哪个大哥来回答一下第三个问题呀。
Lcindep110 2006-04-07
  • 打赏
  • 举报
回复
//以下指DataGrid
1.在ItemDataBound事件中
Button btn = (Button)e.Items.FindControls("your ButtonID");
btn.Visible = false;//btn.Text = "text";
2.你可以在前台设置<ItemStyle width="200px"></ItemStyle>超过了将自动换行。

62,047

社区成员

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

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

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

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