Forms Data Controls :: Clearing A GridView And DetailsView?
Jul 8, 2010
I am designing a web page that allows for the maintenance of a single table - so I have some controls that allow the user to specify some search parameters, a button that then populates a gridview with the result of the search meeting the search parameters, and a details view for inserting and updating specific records. The gridview and detailsview are bound to appropriate sql data sources.All pretty standard.There is also a "reset" button that clears the results of the current search - sets the visibility of the gridview and detailsview to false, and clears the search parameters. Again, pretty standard.What I have done is when the user goes to insert a new record, the gridview and search parameter specification controls are hidden, and the details view displayed. If they cancel the insert operation, the details view is hidden, and the search parms and gridview displayed - but what I am finding is that there are situations when a previously populated gridview is displayed. Here's the situation:1) Specify some search parameters, click search - and the gridview appears, with the appropriate records displayed.
2) Click on the clear button (oops - I didn't want to search, but add a new record). The gridview disappears, the search values are cleared out.3) Click on the insert button - the detailsview opens in "insert" mode.So far, this all works well, and is intuitave to the users.4) Click on the "cancel" button on the details view. I hide the details view, and show the gridview and search parameters. The gridview appears - with the results of the previous databinding still in it.My question is: Is there an easy way to "unbind" the gridview? From my understanding of how the datasource to gridview (or detailsview) connection is done, there is a datatable "behind the scenes" that manages the two way data binding. I also assume that data that has been bound to a gridview is carried over in the viewstate - it would be nice to clear out unneeded data in that.
But I´m trying to do that programmatically, not with the sqldatasource. So I wrote the method that binds data to Detailsview and I call it in the page_load. The problem is that I have to click two times on the select button to view the detailsview. The first time I click on the select button nothing happens.
I have a gridview which at run-time contains X number of records. Upon clicking a DELETE linkbutton on a particular row the gridview completely disappears from the page, when it should reflect simply the loss of that one record. Everything is okay on the database end, the record is deleted, so I know that part is working. I run a query and rebind the gridview within the Rowdeleted event. I even try hardcoded a value in the query which I know exists in the database and it still doesn't refresh with this record showing. Whatever code I need to post, let me know.
I have a gridview and detailsview on the same page. The detailsview is defaultmode="insert" and works perfectly (Role, Site and Department are all bound to ddls). The gridview displays information fine and deletes fine - but when i click edit it breaks. But i dont understand why as it is using the methods and data sources as the gridview. I did a test run on this a few weeks back and it worked in visual web developer, lost all the data when i formatted the hdd and now - i cant get it to work, but i am sure its exactly the same. error is
DataBinding: 'System.Data.DataRowView' does not contain a property with the nameXXXX.
It does that on each of the ddls for site, role and department. But the property is there! i can see it when i test my SPROCS and they display / work fine in the detailsview.
We are using gridview to display data and detailsview to show details, update, insert, and delete as needed. I am a bit confused on whether or not htmlencode and htmldecode is needed when storing data from detailsview. Gridviews always use boundfields and I think encoding and decoding is built in. For detailsview we use mostly templatefields (eval(), bind()), some boundfields, and some data is stored in codebehind using e.values or e.newvalues.Here is where I've got the idea:http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.detailsview.itemupdated.aspxIf I use the iteration and htmlencode, detailsview read only mode displays decoded data. However, gridview displays encoded data and of course update mode of detailsview. So, it seems like detailsview using htmlencode and htmldecode somewhat, but I am not clear as to what degree and what would be the best way to handle it.
I am trying to arrange the information from a SQL record into a 3 column by 3 row table to fit the form presentation that I want. I have placed on the page 3X3 table and then tried to place a detailsview in the first cell for the first picture called P1dv.
I have place a detailsview in the last cell that would control the paging of information called Controldv. I need to fiqure out how to link P1dv paging to Controldv page action. I am using visual web dev. 2005. I am not updating or editing these are read only views.
example of what i need the form output to look like:
I have a master/detail page using a gridview as the master, and a detailsview as the details. The gridview is set to select a record, and the detailsview picks up the ID and you can either edit that record, or add a new one.The detailsview is set up with various template fields, and if everything on the page is visible, it works OK.However, I wanted to hide the Gridview when the user in working with the detailsview. But if I do that, the detailsview doesn't update the record.
I am using a GridView and a DetailsView to establish a master to detail form, the idea is to let user select a record on Gridview and Detailsview will load selected record for editing. Here is declaration for the ODS and Detailsview.
this is working fine when I select a record from GridView and edit/update it in DetailsView. But it's not working so well when I insert a new record using DetailsView, because after insertion the selected record remains as the record selected in GridView.
I have a gridview with a select button. There are 181 records in the gridview all coming from the same database table. When I select the first 5 rows the details view comes up, but after that it doesn't show... The information that it is pulling is the same for the first 5 rows as the other 176 rows. Why won't it show the detailsview?!
currently have a page that I use to allow users to edit information for their attending group. They can edit names, sex, tshirt sizes etc. All they have to do is selsct their club from the gridview and the details are bound to the detailsview. They edit then click submit. What I now want to accomplish is a similar page that deletes members. I know gridviews come with a delete button you can enable, but I need it to fit in with my custom code-behind. I want users to select the member they want to remove from their registration, that persons details to pop up as text in the details view positioned below the gridview (as text, not as text boxes), ask them to confirm the delete by clicking the delete button in the detailsview. I'm really not proficient at VB or ASP.Net, I just got thrust into this project, so any help would be amazing. I'd like to know how the thing works though. Below is the code I use for the editing.
i have a gridview and a detailsview on my page.in gridview i have a EDIT Linkbutton - onclick i am displaying a Panel (with ModalExtender) within DetailsView (DefaultMode = readOnly).How can i change the mode of detailsview to EDIT (in code behind) when displaying in Modal. I also have a Button NEW where i want to display the Detailsview (modal ) in Insert Mode.
I would like to find controls in the detailsview control placed in the EmptyData Template of the gridview. I am trying to create Insert new record for the gridview control.
1. If there are existing records in the table - works fine and sets my two values: I placed Detailsview and Insert Button in the footer of the gridview. I needed to set the values of two fields. When I click on the Insert button it saves new record and sets the field with the value (code attached - works fine). I also have a popup extender that opens detailsview - this works just fine.
2, If ther are not records in the table - saves record but cannot find and set controls on the detailsview Same thing setup in the EmptyData Template. The record is saved but I cannot Find and set the field value on the control.
1. Link button (on click) in the gridview footer (works fine)
I have built a set of custom business objects that I have successfully bound to the GridView and DetailsView controls using the ObjectDataSource. I have been able to provide insert/update/delete functionality and all is working as expected. However, I am trying to wrap this functionality into a custom user control that allows the consumer to specify a table name and a list of column names and have it build this functionality on the fly without regard to the table structure (ie...available columns). I have been able to successfully get the GridView and DetailView to build the columns from code behind and I had all the CRUD working while using 2 panels to show/hide the GridView and DetailsView controls, but I wanted to add some AJAX ability to the control using Matt Berseth's modal popup example to make the interface slicker. The problem I am having is that the EditItemTemplate for the DetailsView control has to be specified in the code behind (because of the flexibile nature of the columns) and I can't figure out how to bind the data from code (rather than having the columns defined and bound in the markup). For all intensive purposes, I am trying to find the code behind counterpart to the following code snippet that binds the data to the textbox:
I'm trying to bind both GridView and DetailsView to a single ObjectDataSource declaratively (in markup). I'm getting the error read as below when I tried to run it.
"The DataSourceID of 'DetailsView1' must be the ID of a control of type IDataSource. A control with ID 'ReservationsDataSource' could not be found."
It works when I bind GridView and DetailsView each seperately to my ObjectDataSource. Is it I can't bind two pagable data web controls to a single datasource?? or there is a trick needed to be done for this to work.
FYI, I'm trying to create a Master/DetailsView of my data. DetailsView of my application should show the record selected in GridView and it should be editable.
I am currently binding my Detailsview and Gridview together by a "ID" field selectedvalue "1". Which works great except for the fact that I don't want the user to have to go down to the gridview and select the page and then the record to view it in the detailsview.
I have 1 sqldatasource for detailsview and another sqldatasoure for the gridview. Both have the exact same select statement.
I want the gridview and detailsview to automatically display the last record inserted not the first record in the table.
GirdView and DetailsView in defautl.aspx. When i insert a new record using detailsview it works and gridview is updated. But i want jump to the right page in gridview after importing the record. How can i highlight the new row imported record in Girdview. I use ajax so gridview and detailsview are in updatepanel.
I have both a details view and gridview with deleting enabled. I'm concerned about users accidentally clicking delete, and poof, the record is gone. Is there a setting to get a confirmation message before the delete is actually done?