菜鸟学Asp.Net——GridView控件之RowDataBind事件中如何获取已绑定的数据

这篇博客探讨了在ASP.NET中使用GridView控件时遇到的问题,即如何在RowDataBind事件中获取已绑定数据的总数和启用状态数量。作者通过实践发现,直接使用GridView1.Rows.Count无法得到总行数,因为数据尚未填充。解决方案是手动绑定数据到DataTable,然后通过GridView1.DataSource获取数据源,从而得到所需信息。
摘要由CSDN通过智能技术生成

初看标题,貌似没什么大不了的,但是当小弟我去实践的时候却发现,事实并非那么简单!

首先,小弟用的是SqlDataSourse绑定到GridView的,

我想实现的效果是:如果状态中,半数以上是启用的,则显示"全部禁用"按钮,反之显示"全部启用"按钮。这样一来,就必须在RowDataBind事件中处理,必须先获得当前的所有行数(不妨取名为num),以及所有的启用的数量(不妨取名为use_num),然而如何获取这两个数却小小的难住了我,在RowDataBind事件中,能用的就一个参数GridViewRowEventArgs e,和我们托的GridView控件,e是关于当前行的信息,当然是无法获得这两个数的值的,看看GirdView的实例GirdView1能否获得这些信息吧!其实我开始一直想当然的以为用GridView1.Rows.Count来获取总行数,结果却是另人失望的,这是为什么呢?微软不是说好的,RowDataBind事件是在数据绑定完之后发生的吗?怎么在GridView1中没有数据呢?

经过调试,我发现,原来微软说的没错,是我想多了!哈哈!微软指的数据绑定之后是指:用GirdView1.DataSource 或GirdView1.DataSourceID指定数据源,然后用GirdView1.DataBind绑定之后发生的R

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值