我需要保存通过选择要在按钮保护的void中使用的行而得到的刺痛。
protected void Button2_Click(object sender, EventArgs e)
{
string = id <= how to get the string here?
}
protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{
GridViewRow row = GridView1.SelectedRow;
string id = row.Cells[3].Text;
}发布于 2019-02-14 20:54:17
您可以将获取id的代码移动到属性中,例如:
protected void Button2_Click(object sender, EventArgs e)
{
string id = SelectedId;
}
private string SelectedId
{
get
{
GridViewRow row = GridView1.SelectedRow;
return row?.Cells[3].Text; // Please note the check against null (row?)
}
}发布于 2019-02-15 01:03:41
最简单的是:
将Button2设置为在启动时禁用...
protected void Button2_Click(object sender, EventArgs e)
{
string id = GridView1.SelectedRow.Cells[3].Text;
}
// only allow the button to be enabled if there is a selected row
protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{
if (GridView1.SelectedRow != null){
Button2.Enabled = true;
} else {
Button2.Enabled = false;
}
}发布于 2019-02-14 20:56:08
使用session代替在函数内部初始化字符串,它将存储您的值,并且您可以在代码中的任何位置访问它。
protected void Button2_Click(object sender, EventArgs e)
{
lblanything.Text = Session["id"].ToString();
}
protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{
GridViewRow row = GridView1.SelectedRow;
Session["id"] = row.Cells[3].Text;
}希望它能解决你的问题。
https://stackoverflow.com/questions/54690845
复制相似问题