Displaying data in datagrid problem

  • Thread starter Thread starter vinayak
  • Start date Start date
V

vinayak

Hi
I am displaying data in Datagrid in ASP.NET with
Edit/Update functionality for each row. On the same page I
have 2 Button controls which submits the request to
server. These button controls are Web Control & not HTML
control. One of these buttons whose title is Delete is
added on the aspx page in design view & also I double
clicked on this button in design view to get the onclick
code for this button in the code behind page. & for
creating the other button whose title is say SaveData I
copied the aspx syntax of the first button & also the
code behind code for Click event of this button. I have
taken care to give diferent id to both of these buttons.
Now there are 2 rows displayed in the datagrid &
both of these buttons are at the bottom. When I click on
Delete button (one which was added in design mode)
the request goes to the, server since there is no code
written in the onclick event of this button page gets
loaded with same data as it is. This is fine
But when I click on SaveData button (one which was
created by copying the aspx & aspx.cs code) request goes
to the server & even though the onclink event for
this button doesn't have any code to execute, the page
gets loaded with disturbed datagrid structure. In the page
the data is scattered because of uneven colspan for any
row gets added. I tried to debug the solution , then I
found even I am not binding any datasource in the Postback
on onclick of savedata button the ItemCreated event of the
datagrid gets fired which randomly sets any colspan to the
cells which are created, because of which I gets scattered
data when this data is rendered into the browser.
I didn't find any reason how this should happen in
Item created event.
I would be thankfull if anybody could suggest me
proper solution

Regards
Vinayak
 
Hi Carl
I am binding the Dataset to datagrid in postback ==
false. And I have implemented ItemDataBound & ItemCreated
event. Since I am not binding data in the post back
ItemDataBound event does not get fired but instead
ItemCreated event get fired where it randomly puts colspan
to a row which makes the datagrid to display data in
disturbed manner. And this is happening only in click
event of SaveData button & not on click on Delete button.

Regards
Vinayak
 
Hi Carl
I got the problem. Actually in ItemDataBound event I am
modifying the Cells structure ( I am making Colspan of
some of the rows to 3 & also deleting some columns
according to my business functionality). This is working
fine if I click on Delete button because on onclick of
this button I am binding data to datagrid which makes the
proper structuring of all the cells in ItemDatabound event
& data is displayed properly in Datagrid. But when I click
on SaveData button I am not binding data to datagrid which
do not make to fire ItemDataBound event & because of which
proper structuring of data do not take place & I get
scattered data in datagrid.
Now what my problem is, I thought earlier that even if
you make changes in Cells structure of datagrid you don't
need to bind data in postback event since viewstate will
maintain the Cells structure & data. So it seems now that
this statement is wrong. Can you through a light on this
statement. I mean whether this statement is right or wrong.

Regards
Vinayak
 
Vinayak said:
I got the problem. Actually in ItemDataBound event I am
modifying the Cells structure ( I am making Colspan of
some of the rows to 3 & also deleting some columns
according to my business functionality). This is working
fine if I click on Delete button because on onclick of
this button I am binding data to datagrid which makes the
proper structuring of all the cells in ItemDatabound event
& data is displayed properly in Datagrid. But when I click
on SaveData button I am not binding data to datagrid which
do not make to fire ItemDataBound event & because of which
proper structuring of data do not take place & I get
scattered data in datagrid.

Ahhh, I figured you were doing something in one of those
DataGrid's events handlers... ;-)
Now what my problem is, I thought earlier that even if
you make changes in Cells structure of datagrid you don't
need to bind data in postback event since viewstate will
maintain the Cells structure & data. So it seems now that
this statement is wrong. Can you through a light on this
statement. I mean whether this statement is right or wrong.

Hmmm, post some same code on what you are trying to do,
and I'll take a look to see exactly what is going on.

--

Thanks,
Carl Prothman
Microsoft ASP.NET MVP
http://www.able-consulting.com
 
Back
Top