C# 为什么我得到的错误必须是非负的?
我得到的必须是非负的,索引超出了范围错误,尽管所有单元格中都有数据,而且索引也没有溢出C# 为什么我得到的错误必须是非负的?,c#,asp.net,C#,Asp.net,我得到的必须是非负的,索引超出了范围错误,尽管所有单元格中都有数据,而且索引也没有溢出 private void editToolStripMenuItem_Click(object sender, EventArgs e) { frmProfileMaster frm = new frmProfileMaster(); frm.status = "Edit"; frm.pid = Convert.ToInt
private void editToolStripMenuItem_Click(object sender, EventArgs e)
{
frmProfileMaster frm = new frmProfileMaster();
frm.status = "Edit";
frm.pid = Convert.ToInt32(gdvProfile.SelectedRows[0].Cells[0].Value);
frm.Show();
}
似乎没有可用数据,或者第0个索引处没有行 因此,当您指向
SelectedRows[0].Cells[0]
时,由于它没有行,因此会显示错误
在quickwatch中,查看您获得的值并相应地生成代码。似乎没有可用的数据,或者第0个索引处没有行 因此,当您指向
SelectedRows[0].Cells[0]
时,由于它没有行,因此会显示错误
在quickwatch中,查看您获得的值并相应地生成代码。这里是您想要的GridView第一个单元格控件值。正确的。 你可以试试看
//if your first cell control is label then
Label lbl = (Label)gdvProfile.Rows[0].FindControl("lbl");
frm.pid = Convert.ToInt32(lbl.Text);
Same way you can check for all control.
Hope it helps.
这里是gridviews的第一个单元格控件值。正确的。 你可以试试看
//if your first cell control is label then
Label lbl = (Label)gdvProfile.Rows[0].FindControl("lbl");
frm.pid = Convert.ToInt32(lbl.Text);
Same way you can check for all control.
Hope it helps.
请在代码开始处尝试
String myValue=gdvProfile.SelectedRows[0]。单元格[0]。Value.ToString()
,并在代码开始处检查myValue
。尝试String myValue=gdvProfile.SelectedRows[0]。单元格[0]。Value.ToString()
,然后检查myValue
。嘿,zey,我检查了字符串myValue=gdvProfile。SelectedRows[0]。Cells[0]。Value.ToString(),但我得到了相同的错误。MNS,数据可用,但仍然…在quickwatch中,只需查看gdvProfile.SelectedRows[1]。单元格[1]。您正在获取的值。我将其检查为字符串myValue=gdvProfile.SelectedRows[0]。单元格[0]。Value.ToString(),但我收到了相同的错误。MNS,数据可用,但仍然…在quickwatch中,只需查看gdvProfile.SelectedRows[1]。单元格[1]。您获得的值非常高,但我需要解决我的确切问题。我需要调试它,因为它正在处理我的项目的其他形式,而不是使用其他方法。我不熟悉gridview的SelectedRows属性。我可以想象,在事件发生时,gridview可能没有任何选定的行。这就是它向您显示此错误的原因。我可能错了。您可以像这样尝试,GridViewRow=gdvProfile.SelectedRow;若row为null,那个么您的gridview并没有任何选定的行。Thanx表示所有,但我检测到了获取该行的原因。在运行时的gridview中,首先有一列,其中有指向该行的箭头悬停。如何通过gridview属性禁用?Thanx所有我得到的解决方案。Thanx harshil但我想要我的确切问题的解决方案。我需要调试它,因为它正在处理我的项目的其他形式,而不是使用其他方法。我不熟悉gridview的SelectedRows属性。我可以想象,在事件发生时,gridview可能没有任何选定的行。这就是它向您显示此错误的原因。我可能错了。您可以像这样尝试,GridViewRow=gdvProfile.SelectedRow;若row为null,那个么您的gridview并没有任何选定的行。Thanx表示所有,但我检测到了获取该行的原因。在运行时的gridview中,首先有一列,其中有指向该行的箭头悬停。如何通过gridview属性禁用?Thanx我得到的所有解决方案。