Forms Data Controls :: Detailsview Mode Updates Read Only Field To Null Or Empty
Sep 10, 2010
I have a detailsview on my page binding a table with information about the employees. They can update their information. Some info should be visible but not updateable. I could change the update command not updating but I like the control where I can set the column to read only. In that way the employee will find the data visible and they will see that the field/column cannot be changed. But having the column read only will return a null-value into that column when editing and updating anything. Why is that? Shouldn't it just update it's read only value?
I have some ImageField in my DetailsView and when I changed it to Insert mode then ImageField is also became the textbox that allow you to type something, and my question is how I can make ImageField to be read only when I changed DetailsView to Insert mode?
I have a SQL DB with just 2 fields, ID and TEXT.What i was trying to do, was placing a Detailsview in EDIT MODE, then selecting from the DB like SELEC TOP 1 Text FROM DB.Then i placed a Ajax HTML Editor in the template field.How can i, keep the HTML Editor on the page, and use it for INSERT and/OR EDITING ?e.g.: on the first time the user opens the site management page, it will be blank, so it will show the HTML with no text on it. but the bottom button will be UPDATE and CANCEL. So when he enters the TEXT he clicks on UPDATE.
On my DetailsView for inserting, I have a field "manager code". When the user types in the code, I want another field "manager name" to be populated based on a lookup table in the database. I have done this on a FormView using code behind and "ontextchanged". How can I do this in DetailsView?
I have setup my business object to have a create_date and edit_date members both datetime datatypes. My company want to display the create_date and edit_date fields in a gridview for each transaction. The problem i have is that after insterting a record it will have a valid create_date but no edit_date and when displayed in the gridview it defaults to datetime.minvalue (My default). How on earth do i show an empty field in my gridview for a null datetime field in the database?
I am using similar architecture to the Imar Spaanjaars example of a tiered solution. With a few small tweeks it has worked well for me for ages. I am passing a List<Database> to my object datasource which connects to my gridview.
One of the few fields that have their ReadOnly property equal to True then Edit and Update the value field is empty ReadOnly property is recorded.I also have a ReadOnly property and its value is not empty. (GridView to the SqlDataSource is connected)
For ASP.NET, I'm using a DetailsView for insert and edit of a record. For edit mode I don't want to display the primary key field because it should not be changed. For insert mode, I want to display the primary key field because it doesn't exist and the user can specify it via a DropDownList that insures they will pick an unique value. A TemplateField is used in the DetailsView markup for the primary key field (hence the DropDownList for insert mode).
My problem is that I cannot get the primary key field to not display for edit mode and to display for insert mode. In the markup I have:
With the TemplateField Visible="True", the HeaderText="name" always displays which I don't want for edit mode. With the TemplateField Visible="False", the field never displays which I don't want for insert mode.How can I achieve the display behavior I want for insert verses edit mode. I'm fine with changing some property programmatically rather than relying an a pure markup approach,
Say I have a DetailsView with a bunch of fields, and I want only certain kinds of users to edit a few of them. They're too few to split them into another DetailsView, so what I'm thinking is to find some way to only allow a user to edit them based on some code-behind logic, effectively making them read-only at will.
I feel it's important to mention that the fields are both TemplateFields, not normal BoundFields with ReadOnly properties. For some reason the required functions don't jump at me from reading the documentation. Oh and I need eveyone to see their specific values, I just want to restrict edit access to them.
I have a DetailsView on the page and I have made one of the fields a TemplateField. In the EditItemTemplate and InsertItemTemplate I have a DropdownList that is databound to a table in my Sql Server database. I wanted to add an initial value to the DropdownList namely "- select -" .
I set the AppendDataBoundItems property to true and added the initial value as a ListItem.Markup of the DropdownList
This works fine for new input. The problem is however that the database already has records that were entered through a Windows Application and many of these records has a null value in this field and exceptions are thrown when I tried to open these records and the system tried to set the SelectedValue of the DropdownList.After some more searching I found this help
This now solved the problem of opening a record where the value is null in the database, BUT now the RequiredFieldValidator is not validating anymore to make sure that a databound item is selected for this field and not the initial value "- select -". So basically now it is not checking anymore to see if valid input has been entered for the DropDownList and it accepts "- select -" thus it acts as if the field is not a required field anymore.
In short what is required is that I want to make sure that the user enters a valid selection in the DropDownList, but it must also cater for old records that do not have this field entered yet so that those old records can be opened in the DetailsView .Opening Old records (with null in that field):When these old records are opened in the DetailsView the DropDownlist should show "- select -" when the value in the database is null.
Saving records (old or new records):When saving the record in Insert mode or Update mode the RequiredFieldValidator should show that a valid input is not selected if the DropDownList is still on "- select -".
I have a form and stored procedure that inserts the data from the form. It works fine except that if a field isn't filled in it doesn't insert a NULL into sql it inserts "".
I've tried a few different ways but none seem to insert NULL, the one below still inserts "", can anyone point me in the right direction.
Here is the required part of the code, if you require more just let me know.
[code]....
So if I enter nothing into address1 field it should write NULL to screen but it always writes NOT NULL.
How do I set the value of a field in a detailsview to the selectedvalue of a gridview on the same page? I am also trying to set today date as value of another field in the detailsview as well as UserID. I wrote the following codebehind for the date setting:
TextBox tb = (TextBox)DetailsView2.FindControl("TextBoxCreDate"); tb.Text=System.DateTime.Now.ToShortDateString(); TextBoxCreDate is a template field in my DetailsView.
Unfortunately, I get a Object reference not set to an instance of an object. Error message.
I am trying to "reset" the DetailsView in View1 to ReadOnly mode if the user changes the index in RadioButtonList. Currently, it is working correctly for the first pass and second pass, but fails at the third pass. I want it to just cycle through the DetailsVIewdatabound event, but the cycle breaks on the third pass and I'm not sure why?
I am trying to handle the detailsview programmatically but I don't know what I am doing wrong. My details view control isn't going into edit mode. My code for my gridview's select button properly loads the data into the detailsview but once the detailsview renders clicking on "Edit" doesn't switch the detailsview contol into edit mode.
This code draws the information from my database and loads the information into the dataview:
[Code]....
This code is in my dvTeamDetails_ItemCommand sub and the beep works:
I have a detailsview with three textboxes as itemtemplates. Each for holding a different date. To avoid the option of users entering invalid values the textboxes are disabled and the user can use a calender control to fill the dates. Because the textboxes are disabled I added a linkbutton to empty a date, if the user decides to clear it.
Asp:
[Code].... In the code behind is the following for linkbutton on click:
[Code]....
Now, the problem is that no matter which linkbutton a user clicks all three textboxes are cleared/emptied. Why?
I guess I'm not sure exactly how or where to do what I need.
First off - here's what I need - - when the user clicks on the NEW button in the detailsView, I have the User.Identity.name captured in a variable and I need to set one of the textboxes (InsertItemTemplate) named 'txtNew' to that name.
I've tried using the ModeChanging (and ModeChanged) event: Dim dv As TextBox = CType(DetailsView1.FindControl("txtNew"), TextBox) If (e.NewMode = DetailsViewMode.Insert) Then ....
However, no matter what, 'dv' always shows as 'Nothing', so I can't change the text of it.
I currently have a page that is used to insert or update records in a DetailsView using an EntityDataSource control. Insert is working perfectly. However, Updating is not. I have the default view set to insert. In PageLoad, I have:
[Code]....
However, the DetailsView always defaults to the first record in the table rather than the record with ID that is equal to the ID querystring parameter. I am not sure how to make it select the correct record. From spending a while researching, it looks like I might need to use a QueryExtender control on the Entity DataSource, but haven't been able to figure out how to configure the QueryExtender correctly.
There is also perhaps some sort of datasource="stuff", databind() that I could toss in there but again.. not really sure how to proceed.
I have a gridview and detailsview that are connected. When I delete records everything works fine except when I delete the last record in the gridview. I want the detailsview to revert to insert mode when I delete the last row in the gridview. Instead the detailsview shows up blank. I want to show the detailsview in insert mode after last row in grid has been deleted? How can do I this?
A DetailsView in Insert mode has all fields cleared after events such as the following:
1. Clicking New. 2. Clicking Cancel. 3. Clicking Insert (if the default mode is Insert).
I have some fields linked to ViewState and they are populatd at PreRender event handler. I am wondring if there is a single place where all relevant ViewState elements can be cleared instead of doing this in all possible relevant handlers such as ItemCreated, ItemCanceled, ItemInserted, etc.
I'm really struggling with this. How do I display my data with radio buttons in a detail view and bind it to my datasource like I've done with the textbox? The database values are int {yes = 1, no = 0, na = -1}. I want my user to be able to quickly update the radiobuttons instead.I'm working in C#.