Forms Data Controls :: Validating Page With Listview Edit Item And Insert Item Templates Are Both Present
Aug 9, 2010
I have a listview set up in "flow" mode where the existing records are all on an extended page so you can scroll down to any record.
The InsertItem Template is in the first position, making it easy to insert a new record.
And one can scroll down the page to any record, click the edit button and update that record -- nice having everything on one scrollable page.
I am running into a problem with validations. I have validation controls restricting inputs for all the textboxes on the Insert Item template. They work fine. And on Item Inserted I am running a page validation:
Page.Validate()
If Not Page.IsValid Then
e.Cancel = True
End If
which works fine also.
The problem occurs when I scroll down to an existing record, and go to edit it. I have all the same validation constraints on the textboxes for the EditItemTemplate as I have on the InsertItemTemplate. But I cannot successfully do a page validation on updating the record. The code I am using on update is:
Protected Sub LVRentals_ItemUpdating(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.ListViewUpdateEventArgs) Handles LVRentals.ItemUpdating
Page.Validate()
If Not Page.IsValid Then
e.Cancel = True
End If
End Sub
This results in a Cancel even if there are no validation errors on the InsertItemTemplate because the Page.Validate() seems to be causing the InsertItemTemplate to think its fields should be filled out also.
Here is the code for a typical entry of the InsertItem Template:
[code]....
All the controls in the Edit Item template are part of ValidationGroup "edit1" and those of the InsertItem Template are part of ValidationGroup "edit2"
How can I get around receiving validation errors on the InsertItem Template when I am trying to validate just the EditItemTemplate when both are present on the page?
I added a RequiredFieldValidator to my InsertItemTemplate, and it seems to be working fine. The problem I am having, however, is that now I cannot do anything else in the ListView (like edit or delete items) UNLESS the required field has a value. Is there some way I can manually do the validation when the user clicks the 'Insert' button on the InsertItemTemplate, or some other little trick I can perform so the user doesn't have to first type in a value just to delete something else in the list?
I need to display the data using listView. I want the data to be displayed like this:
Student Name: John
Exam Grade MidTerm1 A MidTerm2 B
I want each item to looke like that. For this, I created a 'Student' class which has the Name and Exams(A list of Exam class objects) Properties. And the Exam class has ExamName and Grade properties. how I should specify the ItemTemplate and LayoutTemplate for the ListView??
I have a "report" the users can run it basically creates a simple gridview. In the gridview the user can click on a claim ID. The claim id is then passed via url querystring to a claim management page. The claim management page uses a listview to display the various claims and allow users to edit them. I want to use the claim id passed in the url to locate the listview row to open in edit mode, so the user can make changes / alterations to the claim.
What I'm trying to do is: I have a listview control on my page and in my code behind, I created an SQLDataSource object which I defined its Select, Delete, Update and Insert Command strings. I then binded that datasource to my listview. When I load the page, it's obvious the select command works. however, when I perform the insert, the ItemInserted event triggers, but the itemInserted doesn't trigger and there is nothing inserted in my database.I'm not sure what to do here. I also hard coded the insert values in my insert command. So it's not depending on the form values.
I am trying to do this with many issues of data binding doubling the amount and not setting selectedValue on dropdownlist. I have read some posts and they help but I am missing a crucial piece. My problem is that my dropdownlist is doubling the amount of records for the dropdownlist. Instead of "YES;NO;SELECT A VALUE", I am getting "YES;NO;SELECT A VALUE;YES;NO;YES;NO". My database is correct with the UPDATE part but the rebind after update is failing horribly.
I've a listview in which i'm binding data from objectdata source. I have a requirement where i've to allow edit/delete for only certail listviewitem which meets specific requirement. How do i dynamically set that some item can be only be edited not deleted thus only edit button/link should appear and vice-versa.
I am using list view to display the the data but i am getting an error like An item placeholder must be specified on ListView 'ListView1'. Specify an item placeholder by setting a control's ID property to "itemPlaceholder". The item placeholder control must also specify runat="server.Even i have specified the itemplaceholder id but no use still same error.
I have a formview with various templates set up for a database that has 255 columns. I need the insertitemtemplate to pre-fill values based upon a specific selection by the user (just like the edit item template) but when the template is switched to insertitemtemplate every text box is cleared. The idea is that a new entry is usually made by making minor changes to an existing entry. With 255 fields I don't want to require the user to enter every field when only three or four need to change.
I have a listview to display items from database and I need to automatically select the first item when the page first loaded, how can I do it?My listview is in one of the steps of a wizard control, and this wizard control is inside a popcontrol extender with updatepanel.
I would like to change the layout of the edit and insert templates to show multiple columns (instead of the default 1), and make the required fields show in the first column. Please point me in the direction I need to go.
I am using a formview on main web page and the Item template displays my data correctly but I get and error when I try and link to the edit or insert templates.This happens on our remote tesing server only.On my local machine running the page on the local server in VS 2010 everything works fine.But then doesn't it always work on your local machine.I might also mention that I am compiling for asp.net 4.0. Here is the stack trace :
System.Data.SqlClient.SqlException (0x80131904): Login failed for user 'MYCORPABIGWEB01$'. at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()
For some reason, I get an error half way through cycling through my items in a listview right before a record that has a null value for one of its items. It doesnt' haappen any other time. It happens after completing one cycle of the onItemDatabound eventfor a record in a row that is immediately before a particular null value in record immediatley following.My code is written to look for the proper edititemindex, and if it sees it, then it checks for null values for all the items. I can't even get that far, it errors just before the onItemDatabound even runs for the correc edit index
I have a Listview showing my data from the DB.And i have a Formview in INSERTMODE.I added a linkbutton the my Listview, in order to EDIT the data.How could i use the same Formview to Edit the item ? Will i have to change the DEFAULTMODE ? And how can i pass the Id to it ? Will i have to alter the SELECT COMMAND aswell to that it gets the querystring "ID" ?
How can I use required field validators in the insert item template in a listview control? The empty fields in the insert item template are preventing the user from deleting or updating ay other row.
i am using two tables for salary components like bonus,hra,ta,da.one is salary lookup table for viewing which components are chosen and according to this salary table is created dynamically.i want to view data fields of salary table in gridview and update thier value.
now problem is that how to create template field and edit template field for updating fields of salary table because field of the salary table changing every time as it is creating dynamically.
May be I'm trying to run before I can walk, but here goes, I find coding for ASP so frustrating it's just not logical JIM!Anyways after my rant, as I'm a huge fan of the listview control in WinForms I'm trying to get the hang of it in ASP, wth not much luck so far.
I am using listview to create a forum (like this website) like page. I want that the first post of a thread should look different than others ( i.e. an item to look different than all others items of itemtemplate).
I use a ItemDataBound for a repeater.But i use 2 kinds of linq querys to bind it.Some of them has a MerkID, and some doesnt have this item.So its easy i need to do this:
if(e.Item.DataItem.Contains("MerkID"))
{ //Code for linq query 1
} [code]...
So of course the if selection doesnt work, but how can i do that? I already tryed this:
DataRowView drv = (DataRowView)e.Item.DataItem; if (drv.Row.Table.Columns.Contains("MerkID"))
But that doenst work because he cant convert it to a datarowview because its a linq class.So what to do? Right now i use a try and catch, but there are better solutions i guess...