Test your technical skills online, appear in Virtual Interview and be ready for job!
Twitter Twitter LinkedIn YouTube Google
Be Interview ready ! | Search
Make friends on DotNetFunda.com and expand your network!

Win Prizes

Like us on Facebook
Top Forums Author
Wed, 16-Apr-2014 Authors
All Time Authors

Latest members | More ...

(Statistics delayed by 5 minutes)

Row double click event for gridview

Posted by Bravi under Regular Expressions on 1/11/2011 11:40:17 PM | Points: 10 | Views : 13804 | Status : [Member] | Replies : 3
In girdview if we double click on a particular row i need to open an other window
and select a one row and click on open button we have show new window.

Reply | Reply with Attachment

=> Scroll below for responses

Comments or Responses

Posted by: Karthikanbarasan on: 1/12/2011 [Member] [Moderator] [Microsoft_MVP] [MVP] Silver | Points: 25


Use the below code... it takes the values from cells and pass as query string to the new window and u need to make use of the query string as


<script type="text/javascript">
function popItUp(querystring) {
window.open('mywindow.aspx' + querystring);

<asp:GridView id="gv" runat="server" OnRowDataBound="gv_RowDataBound">

void gv_RowDataBound(object sender, GridViewRowEventArgs e)
if (e.Row.RowType == DataControlRowType.DataRow)
string queryString = string.Empty;

for (int x = 0; x < gv.Columns.Count; x++)
string separator = (x == 0 ? "?" : "&");
queryString += string.Format("{0}{1}={2}", separator, gv.Columns[x].HeaderText, e.Row.Cells[x].Text);

e.Row.Attributes["ondblclick"] = string.Format("popItUp({0})", queryString);

Let me know if any questions


Bravi, if this helps please login to Mark As Answer. | Alert Moderator

Posted by: Bravi on: 1/12/2011 [Member] Starter | Points: 25

Thanks Karthik. This is working. There are few other things that I need for the grid, please find the details below:

1. When the user click on a row the gridview row should get selected / highlighted (by changing the background color) and the selected index should get updated.

2. When the user double clicks on a row the selected row should get highlighted by changing its background color.

Bravi, if this helps please login to Mark As Answer. | Alert Moderator

Posted by: Karthikanbarasan on: 1/12/2011 [Member] [Moderator] [Microsoft_MVP] [MVP] Silver | Points: 25

Hi Bravi,

See the code below...

Following javascript will be used to change the color of the row.

<script type="text/javascript">

//variable that will store the id of the last clicked row
var previousRow;

function ChangeRowColor(row)
//If last clicked row and the current clicked row are same
if (previousRow == row)
return;//do nothing
//If there is row clicked earlier
else if (previousRow != null)
//change the color of the previous row back to white
document.getElementById(previousRow).style.backgroundColor = "#ffffff";

//change the color of the current row to light yellow

document.getElementById(row).style.backgroundColor = "#ffffda";
//assign the current row id to the previous row id
//for next row to be clicked
previousRow = row;

Following code will be required on GridView1_RowDataBound event

Protected Sub GridView1_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) _
Handles GridView1.RowDataBound
If (e.Row.RowType = DataControlRowType.DataRow) Then
e.Row.Attributes.Add("onclick", "javascript:ChangeRowColor('" & e.Row.ClientID & "')")
End If
End Sub

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
'FillDataTable is a function that will return a DataTable
'with some values and is available in the code for download.
Me.GridView1.DataSource = Me.FillDataTable()
End If
End Sub


Bravi, if this helps please login to Mark As Answer. | Alert Moderator

Login to post response.

Comments / Responses
Select text & click toolbar to format. Formatting appears in viewmode only. HTML Tags are not allowed.
Bold Italic Underline Paragraph Title Code  Link 
 Wait ... Processing ..... please wait.

Found interesting? Add this to: