如何根据行号取得DataGridView的某一行数据
首先,我通过查询数据库,把得出的DataTable绑定到ObjectDataSource1,然后把ObjectDataSource1与DataGridView1绑定,
现在的问题是,在选择了DataGridView1的某一行之后,我如何得到该行的数据?试过很多网上的方法,
要么得到的都是空值,比如:
DataGridView1.Rows[i].Cells[j].Text
要么报错“
未将对象引用设置到对象的实例”,比如:
this.SmartGridView1.SelectedDataKey.Value.ToString();
或者下面的方法也是“未将对象引用设置到对象的实例”:
DataTable dt = ((DataView)((ObjectDataSource)this.DataGridView1.DataSource).Select()).Table;
现在能得到行号,通过行号,我能否从ObjectDataSource1得到想要的数据呢?再查一遍数据库太没有效率了,初学者,请大家详细指教,谢谢!
------解决方案--------------------null错误要么是Rows[i]不存在,要么就是Rows[i].Cells[j]不存在,你注意索引是否正确
------解决方案--------------------不懂LZ是否每次加载页面都重新绑定数据呢?
if (!IsPostBack)
{
...//绑定数据
}
------解决方案--------------------DataTable可以直接绑定到DataGridView1,为嘛还要多此一举呢?
------解决方案--------------------AspNetPager.dll