C#中Datagridview界面上显示出来了值但是代码获取时为null

DataGirdView用DataSource已经绑定好了值,图中Datagridview界面上也已经显示出来了值,然后执行stringc=dgv_Handcappied... DataGirdView用DataSource已经绑定好了值,
图中Datagridview界面上也已经显示出来了值,然后执行
string c = dgv_Handcappied.Rows[0].Cells[0].Value.ToString();时,获取到的值为null
执行完这一步就报错退出了
这是怎么回事?为什么获取不到值?Rows和Cells中的数字是多少都无法获取到值
展开
 我来答
乐天柿子派
2013-07-18 · TA获得超过143个赞
知道小有建树答主
回答量:146
采纳率:0%
帮助的人:76.7万
展开全部
如果你的数据是自动绑定 AutoGenerateColumns="True"
而不是制定每一列DataField绑定哪个字段的话
在后台dgv_Handcappied.Rows[0].Cells[0] 就不好用了 因为它会认为你的GridView是0列 所以你去不到数据
追问
我用的是DataSource,每列都设置了要绑定DataTable中数据的列的ID
另外一套程序同样的方法就能读取到。。。
追答
dgv_Handcappied.Rows[0].Cells[0].Text.ToString();试试

不行就把你整个方法发出来看看
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
CincyBella
推荐于2016-02-25 · 超过13用户采纳过TA的回答
知道答主
回答量:52
采纳率:0%
帮助的人:23.2万
展开全部
Hi you should add selected function for the control
private void datagridview1_SelectionChanged(object sender, EventArgs e)
{
if (datagridview1.SelectedCells.Count > 0)
{
int selectedrowindex = datagridview1.SelectedCells[0].RowIndex;

DataGridViewRow selectedRow = datagridview1.Rows[selectedrowindex];

string a = Convert.ToString(selectedRow.Cells["you have to mention you cell corresponding column name"].Value);
}
}
追问
我是想不管选中哪行,都让它从列表的第0,0位置开始读取
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友d038aa7
2013-07-18 · TA获得超过471个赞
知道小有建树答主
回答量:1129
采纳率:64%
帮助的人:234万
展开全部
试试在获取单元格内容前加上这个
dataGridView1.EndEdit = false;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
何慕倚东风
2024-10-10 · 超过15用户采纳过TA的回答
知道答主
回答量:70
采纳率:0%
帮助的人:11.2万
展开全部
遇到了一样的问题,题主有解决吗
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
郏鸿祯C6
2013-07-17 · TA获得超过4549个赞
知道小有建树答主
回答量:1601
采纳率:50%
帮助的人:1202万
展开全部
可以把报错信息发出来看看吗
追问
调试的时候一步一步执行不报错,直接退出。不调试就是  未将对象引用到设置的实例,报错就指向那一句
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式