VS2010如何获取Gridview的主键并把它传到下一个页面的SQL语句中?
VS2010如何获取Gridview的主键并把它传到下一个页面的SQL语句中?
[解决办法]
楼主说所的是指:
在当前页面点击 GridView 中某一行
然后获取到当前点击行的 主键
跳转并传参到下一个页面
然后拼接成 SQL 语句?
[解决办法]
楼主获得当前选中行的主键代码:
DataRowView dgv=this.DataGridView1.CurrentRow.DataBoundItem as DataRowView;DataRow currentRow=dgv.Row;string id=currentRow["ID"];
[解决办法]
使用模板列,传什么都可以啊
[解决办法]
你放到 Button等等的CommandArgument里面,
e.CommandArgument
得到
Response.Redirect("x.aspx?id="+e.CommandArgument)下一个页面
[解决办法]
<%@ Page Language="C#" AutoEventWireup="true" %><script runat="server"> protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { System.Data.DataTable dt = new System.Data.DataTable(); System.Data.DataRow dr; dt.Columns.Add(new System.Data.DataColumn("ID", typeof(System.Int32))); dt.Columns.Add(new System.Data.DataColumn("学生姓名", typeof(System.String))); for (int i = 0; i < 8; i++) { dr = dt.NewRow(); dr[0] = i * i; dr[1] = "【孟子E章】" + i.ToString(); dt.Rows.Add(dr); } GridView1.DataSource = dt; GridView1.DataBind(); } } protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e) { if (e.CommandName == "NextPage") { Response.Redirect("http://dotnet.aspx.cc/?id=" + e.CommandArgument); } }</script><html xmlns="http://www.w3.org/1999/xhtml"><head id="Head1" runat="server"> <title></title></head><body> <form id="form1" runat="server"> <asp:GridView ID="GridView1" runat="server" OnRowCommand="GridView1_RowCommand" DataKeyNames="ID" AutoGenerateColumns="false"> <Columns> <asp:TemplateField> <ItemTemplate> <asp:Button ID="Button1" runat="server" CommandName="NextPage" CommandArgument='<%#Eval("ID") %>' Text="测试" /> </ItemTemplate> </asp:TemplateField> </Columns> </asp:GridView> </form></body></html>