GridView和FormView使用问题

LGP88864237 2008-12-22 06:16:35
我页面里GridView和FormView一起绑定的一个ObjectDataSource,所以我在GridView里选择前事件里是这样写的
protected void GridView1_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
{
this.FormView1.ChangeMode(FormViewMode.Edit);//FormView切换到跟新模板
this.FormView1.Row.PageIndex = e.NewSelectedIndex;
}

这样就能点选择的时候,把该行数据直接显示到FormView1里面去跟新,但是现在的问题是,当启用GridView的分页功能时,当选到第2页,第3页。。的时候,e.NewSelectedIndex又从0开始计算了,所以点第2页数据的时候,FormView里还是显示的GridView第一面里的数据,怎么解决呢?

我用的方法是
this.FormView1.Row.PageIndex=this.GridView1.Rows[e.NewSelectedIndex].FindControl("Label3") as Label).Text
用现实ID号的方法来实现,但是发现FormView里的PageIndex 貌似不是按GridView里的顺序在排,还是我对FormView里的PageIndex 理解错了,往高手指点,很急!!
...全文
193 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
LGP88864237 2008-12-23
  • 打赏
  • 举报
回复
谢谢大家,解决了
this.FormView1.PageIndex = e.NewSelectedIndex + (this.GridView1.PageIndex) * this.GridView1.PageSize;
koukoujiayi 2008-12-22
  • 打赏
  • 举报
回复
GridView和FormView应该是两个ObjectDataSource;
FormView的ObjectDataSource是根据GridView所选择的ID列出,
这样就不会发生楼主所述情况了!!
LGP88864237 2008-12-22
  • 打赏
  • 举报
回复
不行啊,根本就没有e.NewPageIndex 和e.NewPageSize 这2个属性,我现在觉的可以用GridView1.PageCount(获取显示数据源所需要的页数)来控制,但是我不是很理解这个属性,有人知道吗?
LGP88864237 2008-12-22
  • 打赏
  • 举报
回复
不行啊,根本就没有e.NewPageIndex 和e.NewPageSize 这2个属性,我现在觉的可以用GridView1.PageCount(获取显示数据源所需要的页数)来控制,但是我不是很理解这个属性,有人知道吗?
wjxluck 2008-12-22
  • 打赏
  • 举报
回复
up
loworth 2008-12-22
  • 打赏
  • 举报
回复
e.NewPageIndex * e.NewPageSize + e.NewSelectedIndex

62,269

社区成员

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

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

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

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