我在这里给ViewState赋值:
protected void gviewJd_record_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
{
ViewState["Code_id"] = gviewJd_record.Rows[gviewJd_record.SelectedIndex].Cells[2].Text;
//判断目前是否处于编辑模式(EditIndex为1),则禁止选择换行
if (gviewJd_record.EditIndex != -1)
{
gviewJd_record.SelectedIndex = -1;
e.Cancel = true;
Literal txtMsg = new Literal();
txtMsg.Text = "<script>alert('编辑模式下禁止选择换行!')</script>";
Page.Controls.Add(txtMsg);
}
}在这里取值:protected void gviewJd_record_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "New")
{
string recordJd_name = ((DropDownList)gviewJd_record.FooterRow.FindControl("NewJd_name")).SelectedValue;
if (recordJd_name.Trim() == "")
{
ErrorMsg.Text = "请输入检查类型!";
return;
}
string recordCheck_date = ((TextBox)gviewJd_record.FooterRow.FindControl("NewCheck_date")).Text;
if (recordCheck_date.Trim() == "")
{
ErrorMsg.Text = "请输入检查日期!";
return;
}
string code_idd="";
if (ViewState["code_id"] != null)
{
code_idd = (string)ViewState["code_id"];
}
((TextBox)gviewJd_record.FooterRow.FindControl("NewCode_id")).Text = code_idd;实际上code_idd是空的,为什么?
protected void gviewJd_record_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
{
ViewState["Code_id"] = gviewJd_record.Rows[gviewJd_record.SelectedIndex].Cells[2].Text;
//判断目前是否处于编辑模式(EditIndex为1),则禁止选择换行
if (gviewJd_record.EditIndex != -1)
{
gviewJd_record.SelectedIndex = -1;
e.Cancel = true;
Literal txtMsg = new Literal();
txtMsg.Text = "<script>alert('编辑模式下禁止选择换行!')</script>";
Page.Controls.Add(txtMsg);
}
}在这里取值:protected void gviewJd_record_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "New")
{
string recordJd_name = ((DropDownList)gviewJd_record.FooterRow.FindControl("NewJd_name")).SelectedValue;
if (recordJd_name.Trim() == "")
{
ErrorMsg.Text = "请输入检查类型!";
return;
}
string recordCheck_date = ((TextBox)gviewJd_record.FooterRow.FindControl("NewCheck_date")).Text;
if (recordCheck_date.Trim() == "")
{
ErrorMsg.Text = "请输入检查日期!";
return;
}
string code_idd="";
if (ViewState["code_id"] != null)
{
code_idd = (string)ViewState["code_id"];
}
((TextBox)gviewJd_record.FooterRow.FindControl("NewCode_id")).Text = code_idd;实际上code_idd是空的,为什么?
if (ViewState["code_id"] != null)
应该是Code_id把
大小写不一样
它也过不来
如果在同一函数中就不存在这问题。
关健是不同函数中,走个变量怎么这样难?谢谢大家!这个问题搞了几天了。C#也太严谨了!!!!
作用域是可以的吧?
这个问题我是不行了,只有高手了。