Solved

Pass values from gridview to another page

Posted on 2008-10-20
9
553 Views
Last Modified: 2013-11-07
I have a gridview on a membership page that has a "select" button. However, I don't want this to be the normal select that the gridview has. I want it to do a response.redirect to another page and fill another gridview there.  In short, my question is how do I perform a querystring based on what row is selected in the gridview?
0
Comment
Question by:smitty68521
  • 5
  • 3
9 Comments
 
LVL 26

Expert Comment

by:Anurag Thakur
ID: 22764369
what needs to be done is that when you select the grid view row you handle the select on the same page (page having the grid view) in a suitable event (RowCommand event). In the row command event you can get the values from the grid view selected row and then create the query string and the redirect your page to the new page where you can retrieve the values from the query string and take actions accordingly
0
 
LVL 2

Accepted Solution

by:
spiderexpa earned 500 total points
ID: 22764658
Just add a hyperlink at the last column of the gridview as follows:->

<asp:HyperLinkField Text="Select" DataNavigateUrlFields="FIELDNAME1,FIELDNAME2" DataNavigateUrlFormatString="~/PAGENAME.aspx?QUERYSTRING1={0}&QUERYSTRING2={1}"/>

Here

1. FIELDNAME1, FIELDNAME2,... are the Field names from the database OR Alias used.
2. PAGENAME.aspx is the page where you want to re-direct.
3. QUERYSTRING1, QUERYSTRING2,.... are the corresponding Querystring names.


0
 
LVL 1

Author Comment

by:smitty68521
ID: 22764682
Would it start out like this:

GridView1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles GridView1.SelectedIndexChanged?

I would add my code here for the server.transfer?
0
Master Your Team's Linux and Cloud Stack!

The average business loses $13.5M per year to ineffective training (per 1,000 employees). Keep ahead of the competition and combine in-person quality with online cost and flexibility by training with Linux Academy.

 
LVL 1

Author Comment

by:smitty68521
ID: 22764747
This is what I have tried so far:

1st page with the datagrid

Protected Sub GridView1_SelectedIndexChanging(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewSelectEventArgs) Handles GridView1.SelectedIndexChanging
        Context.Items.Add("ID", SqlDataSource2.ID)
        Server.Transfer("editproperty.aspx")

    End Sub

second page:

Label1.Text = Context.Items("ID")

When I run this, I click on the "select" button and get a windows authentication that comes up asking for a username/password.  Like it is wanting it to access the database.  I suppose I should have added this sooner.
0
 
LVL 2

Expert Comment

by:spiderexpa
ID: 22764780
No need to add/update GridView1_SelectedindexChanging  anything else in code behind for this issue. No need to use Server.Tranfer/ Response.Redirect.



Just add a hyperLinkFiled at the last column of the gridview as follows:->

<asp:HyperLinkField Text="Select" DataNavigateUrlFields="FIELDNAME1,FIELDNAME2" DataNavigateUrlFormatString="~/PAGENAME.aspx?QUERYSTRING1={0}&QUERYSTRING2={1}"/>

Here

1. FIELDNAME1, FIELDNAME2,... are the Field names from the database OR Alias used.
2. PAGENAME.aspx is the page where you want to re-direct.
3. QUERYSTRING1, QUERYSTRING2,.... are the corresponding Querystring names.
0
 
LVL 1

Author Comment

by:smitty68521
ID: 22765024
I done as you told me:

Hyperlink
DatanavigateUrlfield= "ID"
DatanavigateUrlFormatString = "editproperty.aspx?value = {ID}

On the next page I have in the gridview datasource I have the control Label1.text set to the querystring {ID}

When I run the application I get the following error:

Input string was not in a correct format
0
 
LVL 2

Expert Comment

by:spiderexpa
ID: 22765053
Replace value = {ID} with value = {0}
0
 
LVL 1

Author Comment

by:smitty68521
ID: 22765059
Thanks. Right after I sent that, I realized what I was doing.
0
 
LVL 1

Author Closing Comment

by:smitty68521
ID: 31508135
Awesome expert
0

Featured Post

Master Your Team's Linux and Cloud Stack!

The average business loses $13.5M per year to ineffective training (per 1,000 employees). Keep ahead of the competition and combine in-person quality with online cost and flexibility by training with Linux Academy.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Problem Hi all,    While many today have fast Internet connection, there are many still who do not, or are connecting through devices with a slower connect, so light web pages and fast load times are still popular.    If your ASP.NET page …
International Data Corporation (IDC) prognosticates that before the current the year gets over disbursing on IT framework products to be sent in cloud environs will be $37.1B.
This Micro Tutorial will give you a basic overview how to record your screen with Microsoft Expression Encoder. This program is still free and open for the public to download. This will be demonstrated using Microsoft Expression Encoder 4.
This tutorial gives a high-level tour of the interface of Marketo (a marketing automation tool to help businesses track and engage prospective customers and drive them to purchase). You will see the main areas including Marketing Activities, Design …

770 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question