Unable To Get Values From Value Property Of HtmlInputHidden
Mar 16, 2010
I have a custom control that inherits from .NET's CompositeControl class. This control overrides the CreateChildControls in order to build its child controls dynamically. I need the page to post back after a couple different javascript events occur on the client side.
In order to accomplish this, I create two hidden controls on the page so I can set their values with javascript, submit the page, and read the values out on server side. Here's is the code I use to create these two hiddens:
I have an asp.net page and I'm trying to add a couple of hidden HTML input controls. I will be submitting this form to another site (PP) so I need the names of the controls to NOT change when rendered. Is there a way to make ASP.NET honor the name property that I set in the code-behind?
As an alternate, I don't need to dynamically create these controls, I can also just assign the value to an existing HTML field but I don't know how to do that with ASP.NET/C#
Even though I can see that Application.CreateDate has been set in the Page_Load method on the containing UserControl, the code-behind in the DDL never seems to pick it up.
This is even the case with ValidityDate="<%# DateTime.Now %>". The property of the DDL is declared like this:
[Category("Data")] [DefaultValue(null)] public DateTime? ValidityDate { get; set; }
what is the correct sequence I should be following here. I thought that a DDL would evaluate a cynamic property value like that without too much trouble.
i am unable to change the selectedindex property to 0 it is coming as -1 only and the code wat i am using is
if (lstintellisense.SelectedIndex.ToString() == "-1") { lstintellisense.SelectedIndex = 0; }
after making 0 also its remaining as -1 only and i am getting exception as InvalidArgument=Value of '0' is not valid for 'SelectedIndex'. Parameter name: SelectedIndex
I'm trying to programmatically set the property of a control on my Form AFTER I've proccessed an update command using the FormView, but it's not working. In my example below, I have a basic FormView with only a TextBox and Label in its EditItemTemplate. The FormView uses an AccessDataSource. The TextBox is bound to the datasource, but the label is not. What I'm trying to do is update the value in the TextBox (as well as its associated data stored in the database), and then change the Text property of the Label. (*Note: that I using the label purely as an example. The point is I can't see to set any control's property after an update).
I initally thought it had something to do with the "Page.IsPostBack", but even after trying to adjust my code for that, its still not working. I've tried change the Text property during the Page.IsPostBack during Page_Load event. I've tried setting the Label's EnabledViewState property to True and to False. I've tried using the FormView's OnItemUpdating and OnItemUpdated events. I've tried using the DataSource's OnUpdating and OnUpdated events.
I don't seem to be able to set the Text property within this custom control. Even though I set the Text property in code-behind, when I refresh the web form, only the default message is shown.
I have ajax accordion with 6 panes with an user control inside each of it. In the first pane I have a form view user control and have a modalpopup to display error message. The same method is used in all other panes.
On page load I was able to set the label text property and it properly shows in modal popup.
However whenever I do some validation and update label text property, the modal popup shows up but the label text property is not updated. It works in all other panes.
The only difference is the user control in the pane is inside of a update panel. If I remove the update panel every thing works fine. But I need the update panel to avoid full post back.
How do I set the label text property inside of a modal popup.
I am having a problem with the Client Validation not firing when I have marked a nullable DateTime field as [Required] and the value of the field is null. (It is actually stopping ALL client validation on the page working - not just the DateTime field).
Interestingly enough, once a post back has been done and the error picked up on the server, the client validation starts working.
Also if you set the date to a none null value (see commented out line in the controller) it will also work
I have replicated this behaviour in a small test project (this is deliberately very Noddy - just enough to replicate the problem)
Am I doing something fundamentally wrong or am I looking at coding some sort of work around here? (I realise that a Required nullable field sounds like a bit of a oxymoron, but I wanted to present the user with a blank field which they must then fill, not one pre-populated with an arbitrary date value)
Im using two stored procedures to write and update values in a SQL DB. Im using the SQLDatasource update method. When I run the webpage on my development server everything runs fine. When I try and run the web page on my Live server I get the following error :System.Data.SqlClient.SqlException: Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding This always takes 30 seconds to fail - and looking at google it seems that this is a connection timeout error.In my web.config file I have updated the connectionstring line to include a timeout setting :
As what other member said in this community, the data assign a public variable may be shared among users, therefore, how am be able to declare a property that will accept an array of values using List<string>? The variable will be use in about fifteen pages...if I am going to declare this on each of the page, this will result to difficulty in maintaining the code of my program.
I have a very simple user control with 5 radio buttons on it, and 3 properties (ID, RatingSetID, and Rating). On the initial load of the page they are on, the code acquires data and places the data into the 3 properties. However, when the submit button is clicked the page reloads and the 3 properties get reset to 0, they are in the !IsPostBack as well.
What is the best way to get a number of property values of a business object from the View to the Presenter in a WebFormsMvp page?
Bearing in mind this issue with DataSources: [URL]
Here is what i propose:
The scenario is, I have a business object called Quote which i would like to load form the database, edit and then save. The Quote class has heaps of properties on it. The form is concerned with about 20 of these properties. I have existing methods to load/save a Quote object to/from the database. I now need to wire this all together.
So, in the View_Load handler on my presenter i intend to do something like this:
this is about ASP.NET, ViewState, UserControls and loosing the values of my properties. It is an classic question by know, I know, and even though I have searched here and on Google for a resolution to this problem, I havent succeeded. On the contrary, the more I test different things, the less I understand it seems.
On top of this I am using ext.net and their so called DirectMethod's but I dont think that has much to do with this problem. There are numerous questions I have and I hope that this text will be fairly readable and understandable =)
The UserControl
I have a UserControl, Customers.ascx, that contains some Properties. The "most" important is *_CustomerId*. The _CustomerId is set in code-behind, in ext.net's "DirectMethod" like this (code below from the Page Customers.aspx):
I have a ASPxGridView. In it(for the uninformed) is only a DataSource property for telling it what data to load. My problem is that I'm simply trying to mock up an example and don't need to tie it to an actual database. How would I do this? I basically just want a few rows and some columns but since it only takes a datasource I'm not sure how to do it. Would ObjectDataSource be what I'm looking for?
I am working on a page whereby all the controls within the page get translated to another language.
This is handled within the master page prerender event and generally works fine.
However my page consists of a multiview control that is made up of 2 views. By default the INSERT formview is displayed so the user can enter form detials. This translates fine.
On clicking the save button the multiview active index is set to 1 and the EDIT formview displayed so as the user can update any of their details. This view does not get translated.
It would seem this is due to the controls not being available at this point in the page cycle or when this button event fires.
So i opted to do the translate process within the prerender event of the EDIT formview, and the method does have access to all the controls within this formview and runs after the master page prerender event. So all should be good.
However it seems that all th epage properties at this point in time are cleared. So the translation doesnt work. At the point of master page prerender i have verified they are populated with the values, but as soon as i hit the formview prerender all the page properties get cleared to nothing...
The following action in my controller does not update the Model property which is bound by a radio buttons group (all are named "ListType") when the form is submitted. On the Edit.ASPX form, I used JQuery to reset the radio buttons group. When setting other type of input elements on the form to blank or checked=false, those Model properties are set accordingly upon submission. Does anyone know how to set radio buttons to unched state?
Also I am trying to get the SqlException to show up in my form where I have Html.ValidationSummary helper. My ModelState helper captures the know business rules violations, but I am unable to pass any SqlException and its Message property to this helper class due to unexected exception.
1: I have a .html file that has some markup with some placeholder tags.
[code]...
4: PersonInfo.aspx is literally empty since I am injecting html from code-behind.
When the PersonInfo.aspx is called the html-template markup with appropriate values in the placeholder will be displayed. Also there are chances I would like to send the final markup in an html email (though that is not part of the question as I know how to email).
Is this the best way to fill values in my html-template or is the any other better alternative?
Note: This is a very simple sample example. My class is very complex involving objects as properties and also my html template have 40-50 placeholders.
So code in my step 3 will need 40-50 Replace statements.
I'm constructing a User Control that will have one Property called "ContractIdx". Here's how I've constructed this Property:
public int ContractIdx { get { return Convert.ToInt32(this.Attributes["ContractIdx"]); } set { this.Attributes["ContractIdx"] = value.ToString(); } }
I'm initially loading the User Control by passing a parameter to it and setting ContractIdx accordingly. That all works fine.
Upon Postback though I'm loading the User Control without any parameters and then setting its ID property to what it was before the Postback. My understanding was that if I did this then ViewState would properly restore everything. Yet apparently this is not the case with the "ContractIdx" attribute.
Where am I mistaken in my understanding? How should I change things to get this mechanism to work?