那么在05版本中应该怎么写呢:我觉得应该是: int index = dgv_Popedom.CurrentCell.RowIndex;
但是MSDN上说这是获取单元格父行的索引。一样吗?不一样的话。在05中获取控件某行的行号怎么写呢?
其实我想做的是从数据库中彻底删除一行数据,但是在红色的那一行总提示说 :索引超出范围,必须为非负值并小于集合大小 参数名:index 代码如下:
int index = DataGridView1.CurrentCell.RowIndex;
string strUserNum = DataGridView1[index, 0].ToString();
int intUserNum = Convert.ToInt16(strUserNum);
string msg = "删除该记录将不能恢复,确定要删除\"" + strUserNum + "\"吗?";
DialogResult rs=MessageBox.Show(msg,"删除记录",
MessageBoxButtons.YesNo,MessageBoxIcon.Question,MessageBoxDefaultButton.Button2);
if(rs== DialogResult.Yes)
{
string connStr,delCmd;
connStr = "workstation id=localhost;Integrated Security=SSPI;Database=djglBook;";
delCmd="Delete From PopedomTable Where 序号="+strUserNum;
SqlConnection conn = new SqlConnection(connStr);
conn.Open();
SqlCommand cmd = new SqlCommand(delCmd,conn);
cmd.Parameters.Add(new SqlParameter("@序号",SqlDbType.SmallInt));
cmd.Parameters["@序号"].Value=intUserNum;
cmd.ExecuteNonQuery();
conn.Close();
ShowUser();
}
if(rs==DialogResult.No)
{
btn_Delete.Enabled = true;
}
好似有一个提示就是: int intUserNum = Convert.ToInt16(strUserNum);
说是 输入的字符串格式不正确。帮帮我吧,实在不知道怎么办。先谢谢大家了!!!