关于C#.net中Gridview页面传值的问题

如何点击“编辑”后弹出新页面,同时传入ID值,使新页面中字段内容与Gridview中的相对应... 如何点击“编辑”后弹出新页面,同时传入ID值,使新页面中字段内容与Gridview中的相对应 展开
 我来答
lilybdwk
2011-05-20
知道答主
回答量:16
采纳率:0%
帮助的人:13.4万
展开全部
GridView1_RowEditing方法里:
string id = GridView1.Rows[e.NewEditIndex].Cells[2].Text.ToString(); //获取当前行的主键值
Session["ID"] = id;
在新页面上:
string id = Session["ID"].ToString();
这样你点击的那行的主键就可以传到新页面上,然后再根据这个主键获得相应的值
追问
你这种方法应该是传到值了,不过字符串类型我不知道如何转换string idstr = Session["ID"].ToString();          int ids = Convert.ToInt16(idstr);                string selid = "select * from dab where id='"+ids+"'";总提示输入的字符串不正确
414101705
2011-05-16
知道答主
回答量:11
采纳率:0%
帮助的人:7.4万
展开全部
不妨把编辑列转换为模板列,然后将id绑定为编辑按钮argument参数
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
迟蕴0KBeb4
2011-05-18 · TA获得超过2396个赞
知道小有建树答主
回答量:670
采纳率:0%
帮助的人:389万
展开全部
前台:
<asp:Button ID="Button1" runat="server" Text="编辑" CommandName="Print"/>
后台: protected void gvAuditStu_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
Button But1 = (Button)e.Row.Cells[6].FindControl("Button1");
But1.CommandArgument = e.Row.Cells[1].Text; //主键(传递的字段也可)
}
}
if (e.CommandName == "Print") //
{
if (ds.Tables[0].Rows.Count > 0)
{
Response.Write("<script language=javascript>window.open('TeaReviewsPrint.aspx?stuid=" + e.CommandArgument.ToString().Trim() + " ','','width=600,height=1300');</script>");
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
weiye308
2011-05-21 · 超过12用户采纳过TA的回答
知道答主
回答量:49
采纳率:0%
帮助的人:37.5万
展开全部
把编辑这列用HyperLinkField字段

<asp:HyperLinkField DataNavigateUrlFields="id"
DataNavigateUrlFormatString="queryStu.aspx?id={0}" HeaderText="更新"
Text="修改" />

//queryStu.aspx 是页面名称
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式