C# 如何通过在文本框中输入索引来选择栅格视图行
我正在使用C asp.net web应用程序。它包含一个网格视图、文本框和一个按钮。我需要的是在文本框中键入1并输入按钮,然后自动选择第一行并指向另一个包含所选行更多详细信息的页面 在我的代码中,可以通过鼠标点击超链接重定向到下一页……但这不是我的要求。 这是我的密码C# 如何通过在文本框中输入索引来选择栅格视图行,c#,asp.net,gridview,indexing,C#,Asp.net,Gridview,Indexing,我正在使用C asp.net web应用程序。它包含一个网格视图、文本框和一个按钮。我需要的是在文本框中键入1并输入按钮,然后自动选择第一行并指向另一个包含所选行更多详细信息的页面 在我的代码中,可以通过鼠标点击超链接重定向到下一页……但这不是我的要求。 这是我的密码 <asp:TextBox ID="txtindex" runat="server"></asp:TextBox> <asp:Button ID="Button1"
<asp:TextBox ID="txtindex" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Font-Bold="True" Height="39px"
onclick="Button1_Click" Text="go" Width="53px" />
<br />
<br />
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
DataKeyNames="acno" DataSourceID="SqlDataSource1">
<Columns>
<asp:BoundField DataField="acno" HeaderText="acno" InsertVisible="False"
ReadOnly="True" SortExpression="acno" />
<asp:HyperLinkField DataNavigateUrlFields="acno" HeaderText="username"
DataNavigateUrlFormatString="~/details.aspx?acno={0}" Target="_blank" DatatextField="username" SortExpression="username" />
<asp:BoundField DataField="rdate" HeaderText="rdate" SortExpression="rdate" />
</Columns>
</asp:GridView>
<br />
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:postofficeConnectionString %>"
SelectCommand="SELECT [acno], [username], [rdate] FROM [customer]">
</asp:SqlDataSource>
details.aspx.cs
`
最好使用int.TryParse检查用户输入
int index,aid;
if (int.TryParse(txtindex.Text, out index) &&
int.TryParse((GridView1.DataKeys[index].Value.ToString()) , out aid))
{
Response.Redirect(string.Format("details.aspx?acno={0}", aid));
}
具体点?你到底想要什么?你面临的问题是什么?您的按钮1\u单击代码没有触发或什么?我想要的是,当我在文本框中输入gridview索引编号,然后从grid view中选择具有该索引编号的行,然后重定向到另一页以显示更多详细信息Hanks…但我输入了1,当重定向到详细信息页时,它显示值不能为空。您可以更新问题吗使用详细信息页面的页面加载事件?是否更改此行响应。重定向字符串。Formatdetails.aspx?acno={0},aid;?作为Request.QueryString[acno]您在详细信息中得到的值是多少?它现在正在工作,但当我在另一个网格视图中使用相同的代码时,它不工作……请帮助我@Damith@beoun你最好再问一个问题
protected void Page_Load(object sender, EventArgs e)
{
int id =int.Parse( Request.QueryString["acno"]);
con.Open();
SqlCommand cmd=new SqlCommand("select acno,username,states,district,fname,lname from customer where acno='"+id+"'",con);
SqlDataReader dr;
dr=cmd.ExecuteReader();
while(dr.Read())
{
Label1.Text=dr[0].ToString();
Label2.Text=dr[1].ToString();
Label3.Text=dr[2].ToString();
Label4.Text=dr[3].ToString();
Label5.Text=dr[4].ToString();
Label6.Text=dr[5].ToString();
}
con.Close();
}
int index = int.Parse(txtindex.Text);
int aid = Convert.ToInt32(GridView1.DataKeys[index].Value.ToString());
Response.Redirect(string.Format("details.aspx?acno={0}", aid));
int index,aid;
if (int.TryParse(txtindex.Text, out index) &&
int.TryParse((GridView1.DataKeys[index].Value.ToString()) , out aid))
{
Response.Redirect(string.Format("details.aspx?acno={0}", aid));
}