I have a datagrid of 10 rows and I am updating the fifth
row using template column edit. How wil u know that the row
is updated, so that it can be send to database for updating
the respective table?

Answers were Sorted based on User's Feedback



I have a datagrid of 10 rows and I am updating the fifth row using template column edit. How wil u..

Answer / aric smith

In GridView_RowUpdating Event, you get e.RowIndex which can
be used for finding out row edited.

e.g. : gridview.Rows[e.RowIndex]

Is This Answer Correct ?    4 Yes 0 No

I have a datagrid of 10 rows and I am updating the fifth row using template column edit. How wil u..

Answer / jatinder walia

Create Your Source Code As Follows:
1)Create a new website Project
2)Create a page called default.aspx(you will get it if you
are using Microsoft IDE)
3)Paste the following code on Default.aspx
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
<script language="javascript" type="text/javascript">
var CurrentlyEditingRow=1;
function Edit(TargetRow)
{
CurrentlyEditingRow=TargetRow.id;
var txt =document.getElementById
(TargetRow.id).innerText;
AsyncHit("Editpage.aspx?
r="+TargetRow.id+"&val="+txt,"");
}
function AsyncHit(RemoteUrl)
{

if (window.XMLHttpRequest)
{ // For Firefox,Mozilla, Safari & IE 7 and above
etc
xmlhttp=new XMLHttpRequest();
}
else if (window.ActiveXObject)
{ //For IE
xmlhttp=new ActiveXObject('Microsoft.XMLHTTP');
}

if (typeof(xmlhttp)=='object')
{
xmlhttp.onreadystatechange=GetResponse;
xmlhttp.open('POST', RemoteUrl, true);
document.getElementById
("prg_bar").innerHTML="Sending..Please Wait..";
xmlhttp.send("");
}
}


function GetResponse()
{
if (xmlhttp.readyState==4)
{
document.getElementById("prg_bar").innerHTML="";
if (xmlhttp.status==200)
{
HandleResponse(xmlhttp.responseText);
}
else
{
HandleResponse("-1");
}
}
}
function HandleResponse(Response)
{
document.getElementById
(CurrentlyEditingRow).innerText=Response;
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<table>
<tr>
<td id="prg_bar">

</td>

</tr>
<tr>

<td>
<asp:GridView ID="GridView1" runat="server"
AutoGenerateColumns="False">
<Columns>
<asp:BoundField
AccessibleHeaderText="Field1" DataField="name"
HeaderText="Field1" />
<asp:BoundField
AccessibleHeaderText="field2" DataField="id"
HeaderText="field2" />
</Columns>
</asp:GridView>
</td>
</tr>
</table>

</div>
</form>
</body>
</html>


4)Paste The Following Code On Default.aspx.cs
/*NOTE:Create ur own class for fetching some data from
dataset ie create your own DATABL.cs class for fetching
data into dataset.This example has been programmed to work
with 2 fields in Grid only and the second field must be
numeric,otherwise the logic will crash in current
scenario.Offcourse you can change it as per yor
requirement.*/

int RowCount = 1;
protected void Page_Load(object sender, EventArgs e)
{
string strQuery = "select name,id from IMPORTEXCEL
where rownum<20";

DataBL odbl = new DataBL();
DataSet ds = odbl.getDataSet("qry", strQuery);
GridView1.DataSource = ds.Tables[0];
GridView1.DataBind();
int ColCount=0;
for (RowCount = 0; RowCount < GridView1.Rows.Count;
RowCount++)
{
for (ColCount = 1; ColCount <
GridView1.Columns.Count; ColCount++)
{
GridView1.Rows[RowCount].Cells
[ColCount].Attributes.Add("Id", RowCount.ToString() + "_" +
ColCount.ToString());
GridView1.Rows[RowCount].Cells
[ColCount].Attributes.Add("OnClick", "Javascript:Edit
(this)");
}
}
}

5)Now Create a new aspx Page with the name EditPage.aspx
6)Change the aspx of EditPage.aspx as under
<%@ Page Language="C#" AutoEventWireup="true"
CodeFile="EditPage.aspx.cs" Inherits="EditPage" %>

ie nothing should be on this aspx page except the first
default line of code on this page..ie no HTML

7)Paste The following code on EditPage.aspx.cs
protected void Page_Load(object sender, EventArgs e)
{

string Values = Request.QueryString["val"];
if (int.Parse(Values) > 30)
Response.Write("High");
else
Response.Write("Low");
}
8)Now run this application.
9)Now when you click on the first cell on any row in the
grid,nothing happens.However,when you click on the second
row,you will find "Sending..Please Wait.." written briefly
and the number will change to values HIGH,if value is
greater than 30 and LOW if vice-versa.Hope this will help
someone.....

Is This Answer Correct ?    3 Yes 0 No

I have a datagrid of 10 rows and I am updating the fifth row using template column edit. How wil u..

Answer / jatinder walia

TestPage.aspx
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
<script language="javascript" type="text/javascript">
function Edit(TargetRow)
{
var txt =document.getElementById
(TargetRow.id).innerText;
AsyncHit("ProcesssPage.aspx?"+txt)
}

function AsyncHit(RemoteUrl)
{
var ParamString="xx";
if (window.XMLHttpRequest)
{ // For Firefox,Mozilla, Safari & IE 7 and above
etc
xmlhttp=new XMLHttpRequest();
}
else if (window.ActiveXObject)
{ //For IE
xmlhttp=new ActiveXObject('Microsoft.XMLHTTP');
}

if (typeof(xmlhttp)=='object')
{
xmlhttp.onreadystatechange=GetResponse;
xmlhttp.open('POST', RemoteUrl, true);
document.getElementById
("prg_bar").innerHTML="<img src='../images/ajax-
loader1.gif'/>";
xmlhttp.send(ParamString);
}
}


function GetResponse()
{
if (xmlhttp.readyState==4)
{
document.getElementById("prg_bar").innerHTML="*";
if (xmlhttp.status==200)
{
HandleResponse(xmlhttp.responseText);
}
else
{
HandleResponse("-1");
}
}
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:GridView ID="GridView1" runat="server"
OnRowCreated="GridView1_RowCreated">
</asp:GridView>

</div>
</form>
</body>
</html>
-----------------------------------------------------------
TestPage.aspx.cs
protected void Page_Load(object sender, EventArgs e)
{
ViewState.Add("shape", "circle");
string shapes = ViewState["shape"].ToString();
Application["a"] = "zzz";


}
protected void GridView1_RowCreated(object sender,
GridViewRowEventArgs e)
{
GridView1.Rows[RowCount].Attributes.Add("Row_" +
RowCount.ToString(), " onclick=javascript:Edit(this)");
RowCount++;
}

Is This Answer Correct ?    2 Yes 1 No

Post New Answer

More ASP.NET Interview Questions

Define an assembly?

9 Answers   Siebel,


Describe the role of inetinfo.exe, aspnet_isapi.dll and aspnet_wp.exe in the page loading process

1 Answers   HCL, Siebel Systems, Visual Soft,


How you can manage the state of application at the server side in ASP.NET?

0 Answers  


What is a Managed Data?

4 Answers   HCL,


Which keyword you should use for class not to extend? Which keyword to be used for making the class accessible within the assembly only what are the authentication mode of ASP.NET How will you call a JavaScript function using code-behind? How will you define the Session Timeout? What are the methods to validate client-side whether the input is a correct Date format? You want to write a log when ASP.NET application starts. Which is the best place to write that peice of code? What are the page load events and what is there order? What is the difference between abstract class and interface? What are the differences between DataSet and DataReader? What are the two properties other than DataSource, which is required to populate the Drop Down Menu? What is difference between String and StringBuilder Classes? What are differences between Custom control and User control?

1 Answers   Ignis Technologies,


Why asp.net mvc is better than asp.net? : Asp.Net MVC

0 Answers  


What is the postback property in asp.net?

0 Answers  


what is usercontrol how we can use acess the controls that are present in the usercontrol in the aspx page suppose we have 2 text boxes in a user control how u can acess the 2 textboxs in the aspx page

1 Answers  


Why do we use datasource in asp.net?

0 Answers  


How do session tokens work?

0 Answers  


What is a 401 redirect?

0 Answers  


What are the 4 tenants of SOA/D.

1 Answers  


Categories