State Management :: Stopping ViewState Persistence On Dynamic Controls?
Oct 15, 2010
I have a set of dynamically-created (IE: by code) controls on my web page. Depending on which options the user decides to go (Edit/New), those controls are re-created with the appropriate information (IE: "with values" with Edit, "without values" with New).
Here's the situation:
- I create my controls in InitComplete when it comes to save the data (both on Edit/New) contained within the controls.
- I create my controls in PreLoad when it comes to load them initially (Both on Edit/New) in order to avoid the ViewState to kick in.
However, despite creating the controls after the ViewState has been applied (technically), the controls still somehow retain the pre-postback's information. IE: if I have options 2 and 4 selected and I choose "New", which should show the options without being selected, they remain selected no matter what. And this is true despite changing their values in the PreLoad state. From my understanding, creating a control in this fashion and at that point in the page lifecycle should override any values the ViewState might have had for those controls. I have also tried to disable the parent's control viewstate (Table.EnableViewState = false) again, to no avail.
I've tried using the Me.ViewState.clear() and Me.ClearChildViewSate prior to loading the initial values as well, but again all for naught. I do understand that any control created after the Init phase of the lifecycle has to play "catchup" with the current state, however I would expect that clearing the ViewState prior to creating the controls would fix this issue. It doesn't seem to.
View 1 Replies
Similar Messages:
Aug 24, 2010
I want to know that when we create custom controls, then is there State Management through ViewState done automatically or we have to handle it explicitely ?Since i have created Custom Controls that is behaving as if it is not maintaining its state on PostBack.
View 9 Replies
Oct 9, 2010
Now here is the weird thing. First i am running it locally on the built in vs2008 web server.I load my control in fine, do a postback from a linkbutton, locally on my machine it all works fine, no issue.However when it goes onto my host, it falls over with the message:
Failed to load viewstate. The control tree into which viewstate is being loaded must match the control tree that was used to save viewstate during the previous request.Now i also load controls dynamically and use postbacks and things in the admin area of the site...and that works fine, however my front end just keeps failing? See the code behing below:
[Code]....
View 1 Replies
Jan 11, 2011
I have problem getting values from viewstate in GetTopThemes.
<asp:ObjectDataSource
ID="sourceGetTopThemes"
runat="server"
TypeName="DBConnection"
SelectMethod="GetTopThemes"
EnableViewState="true"></asp:ObjectDataSource>
[Code]....
}
[Code]....
when the page is not Posted back, I saved all values in the viewstate.
View 2 Replies
Apr 30, 2010
I have been getting this error a lot lately with some of my users, and I had a couple of concerns with view state and I have read so many articles but I am still lost..
1. I use masterpage on all the pages and I need viewstate for some of the pages but..
There is a page where a user will fill out the information and then submit this data to a cgi server, and it is where I get most of the Client Disconnected errors, what would happen if I disable viewstate when they click on that button?
Now when a user browses from one page to another, does the view state from the previous page get deleted? If not how would I delete it?
Does the master page have its own viewstate? Would I be able to make sure none of items on my master page are using the viewstate?
View 7 Replies
Dec 20, 2010
Currently I am creating some dynamic controls on my page these can be hundreds of controls.Some of these will be available depending upon the input of the page so you can say the visibility will be different. This page in fact represents the dozens of pages.I want to create these pages from viewstate, e.g I have created 5 textboxes on page_Init() and then want to store these in Viewsate and next time if needed then load from the view state.In the other words can I create the and store the whole control object with all of the properties in viewstate, if so then how I will be able to accomplish this.
View 2 Replies
Jul 29, 2010
I want viewstate to stop showing its magic at particular event in my page. Problem details is :I creating dynamic panel on my page_init event ( added to parent panel on aspx ) and creating dynamic dropdown control on page load events with values 1,2,3,4,5 in which 1 is default and added this dropdown to panel i created in init event. As my controls are dynamic , I am creating these controls on postback also. I had enable viewstate property true for all controls as I want them to persist user data on postbacks. i.e. if after page gets loaded drpdown default is 1 and uses select 5 and click on any button on my form ( Postback ) dropdown should show 5 and this is working for me. But problem in one requirement is one particular after button click event on my page say ( Reset) i want my dropdown value should not persist user selection and should display default value 1. I can t reset my controls on this button click event. All I want is as these are my dynamic controls , they are created on every page_load and fresh data is loaded, on particular REset button I want my Viewstate should not map to my dropdown. and controls should show whatever default selection is.
View 1 Replies
Jan 14, 2011
I have a gridview with results from a database query and columns where I add linkbuttons to individual cells.
something like:
Dim LB2 As New LinkButton
LB2.Text = "title"
LB2.CommandArgument = "argument"
AddHandler LB2.Click, AddressOf LaunchDocument
GridView1.Rows(i).Cells(10).Controls.Add(LB2)
There is a lot time involved in determining what cells get the linkbutton and I want to avoid going through that process on a postback when a user clicks one of the linkbuttons.How can I maintain these controls in the gridview after a user clicks a linkbutton and a postback is done?Right now the application has to go through the process all over again.
View 6 Replies
Jul 23, 2010
I have a search page containing a collapsible panel with several controls including text, radio, drop list and check box. In the same page there is a gridview to display search result and links to other pages.Everytime I click on a link in the gridview, the viewstate is only maintained if I nevigate with the pagination of the gridview. However if I click on a link in the gridview and click the back button to the search, everything goes back to default, and the search results will be gone from the gridview. How may I enable the controls and the gridview to remain the same if I hit back button to it?
View 3 Replies
Jan 20, 2011
I read this article first to try to solve this issue, but I am already loading the controls in the Init phase of the page, yet viewstate is not persisting. Any ideas as to why? (Of note is that this is for a custom module in DNN and I do have some AJAX update panels on the page, though this section is not within an update panel, for what it's worth.)
As an overview of what I've got:
1. LoadControl.ascx - based on reading query string parameters, determines whether to load the master or the detail .ascx.
2. Master.ascx
3. Detail.ascx
In my master control I dynamically load either a master or detail sub-control in the page_Init. The detail page has a treeview control and then uses a multi-view control to display the panel associated with the depth of the node selected on the tree. On the panel being displayed I have a cascading ddl within a detailsview control which initiates a postback to select the child ddl based on the parent ddl selection. However, when the page refreshes after the postback, both ddls have resorted to their default selection.
What is interesting however, and I just realized this as I am typing, is that the Treeview is populated when the page comes back from the postback, so that is only possible if viewstate is being persisted right? (See the page_load code and you'll see that Call PopulateRootLevel(intTreeUserID) which populates the treeview, is not called on postbacks....hmmm.
Any ideas as to why the treeview maintains viewstate but not my ddls???? But though the tree is populated, I do have to explicitly select the node again and set the panel that the detailsview control is on to visible again too....
Here is the dynamically loaded control code:
[Code]....
And in the Detail.ascx page load I've got:
[Code]....
[Code]....
View 6 Replies
Sep 1, 2010
I am loading a series of controls in the Page_Load event. However, I have to recreate those controls each page load, which means storing their data elsewhere. This is cumbersome.
protected void Page_Load(object sender, EventArgs e)
{
MyControl control = (MyControl)LoadControl(...);
control.Initialize(GlobalClass.controlData);
//^gives the control the data it had previously.
//Or use ViewState["controlData"] if serializable.
Controls.Add(control);
}
I feel like I should be using if (!IsPostBack) {}, but I don't know how, or why. In contrast, if I place the controls into the markup, then the controls seem to stay persistent. For example, a button in mark-up will remember any changes to its Text property (I think?).
<asp:Button ID="buttonText" runat="server"
Text="Text Segment" onclick="buttonText_Click" />
How do I maintain some sort of persistence with dynamically added controls, like controls added via mark-up? This would save me much work and frustration.
(I've coded for a small eternity, but the more I do ASP.NET, the more confused I become. Which is exactly the opposite of what how I understood learning to work :-P.)
View 2 Replies
Jan 14, 2011
I have a page that loads a usercontrol dynamically. Depended on the user's actions, this control may be unloaded in Page_PreRender and a different control may be loaded instead. I am attempting to use the solution outlined by Mark DotNet Evans in this post:
http://forums.asp.net/p/1491790/3814320.aspx
This all works great, except if the user clicks the refresh button in the browser just after the change of usercontrol. Then, I get an error
Failed to load viewstate. The control tree into which viewstate is being loaded must match the control tree that was used to save viewstate during the previous request. ...
I assume the error is caused by the browser re-posting the request with the old viewstate that matched the control tree when the page was loaded, but no longer does. How can I prevent getting an error when the user reloads the page?
View 6 Replies
May 23, 2010
I am writing a search results page for an airline booking system. I have Next/Previous buttons to view flights for the next or previous days. The way i have done my results grid is that i use an HtmlTable and dynamically add rows, cells and controls into the cells. This gives ultimate flexibility given that we can add any control type we want and have it function as it does everywhere else in the system. As you should be aware - i must recreate these controls each time the page is reloaded (in the page_init event) since asp does not handle this automatically.
When they go next/previous it refreshes the flight data and re-populates the grids. If they select a flight in the return grid (by checking the RadioButton), and go next on the FIRST leg grid, the selection of the return leg stays the same after the postback
- which is great. But the problem is, if the flight they selected on the return leg is no longer available it will not create the control and i get the following error;
"Microsoft JScript runtime error: Sys.WebForms.PageRequestManagerServerErrorException: Failed to load viewstate. The control tree into which viewstate is being loaded must match the control tree that was used to save viewstate during the previous request. For example, when adding controls dynamically, the controls added during a post-back must match the type and position of the controls added during the initial request."
Is there any way to tell asp.net that if you do not find the control anymore, simply ignore it rather than throwing the error? The nature of this design is that there potentioally WILL be a different layout after the page is posted back.
View 7 Replies
May 20, 2010
I start with a blank ASP.NET page where I disable ViewState for the whole page with EnableViewState=False and even ViewStateMode=Disabled.keep adding various controls to the page -- Label, Table, Calendar, TextBox, DropDownList.Everything looks good, i.e. my __VIEWSTATE tag fluctuates between 24 and 28 characters.As soon as I add a single RadioButton (or CheckBox), the __VIEWSTATE shoots up to 130 characters. And it keeps growing by over 100 characters every time I add another RadioButton.
View 19 Replies
Apr 19, 2010
I have a code like this in the Me.LoadComplete event.
[Code]....
Now I would like to set this viewstate("data") = nothing on a certain button click in a user control (.ascx) in this page but it doesnt clear the viewstate. What am I doing wrong? In the onClick even of the button in the .ascx I write Me.viewstate("data") = Nothing
View 4 Replies
Jul 22, 2010
I want to use textbox value after I visit from current to other page then again to current page using viewstate but value should be the one when I was current page last time.
View 3 Replies
May 3, 2010
I am creating a simple string of values that get added to a label after a post back. I am setting the values thorugh ViewState. However, my appended values do not get updated until AFTER the 2nd postback. Example:
On Page_Load the label displays a "0";
If I enter a "1" in the text box and click the button the label still displays a "0";
If I click the button again (the 2nd postback) then my label correctly displays "0,1"; This works for whatever value I enter after. i.e. "0,1,35,hello world", etc.
What I am I missing? Code Below.
.ascx - I left out inherits and codebehind
[Code]....
View 4 Replies
Dec 22, 2010
have some viewstate value in my opener window ,when i close the popup i want to set new value in the opener viewstate.
View 3 Replies
Sep 8, 2010
I have created a custom control that extends the class ImageButton, the thing is that I now also want to save this control to a viewstate.
View 4 Replies
Oct 25, 2010
how save int array in viewstate?
View 4 Replies
Sep 16, 2010
I am developing a a web application of a general store where the operator has to enter the things what customer has purchased. Like daily usage item,or anything. So I have form in which I first ask how much item u wannt to register...(if he has 20-30 number of items then operator will enter 20-30 then in gridview 20-30 item are opened. With bind dropdownbox containing name of item ,then textboxs containing mrp, value, stock avail of that item. Here is the link for demo. [URL]. Problem is suppose the operator enter the value above 20, then viewstate size id about 1.50Mb that's too heavy.
[Code]....
Here is .cs code
[Code]....
View 1 Replies
Jan 31, 2011
I stored a list<mytype> object in a viewstate. Type of list<mytype> comes from a public structure which is defined at page.
When I try to convert viewstate to a list<mytype> object it cause error.
Public struct mytype
{....}
Page_load()
{ list<mytype> obj = new list<mytype>();
viewstate["mystate"]=obj
}
My_function(){
list<mytype> tempobj = new list<mytype>();
tempobj = (list<mytype>)viewstate["mystate"];// this line cause error !
}
View 5 Replies
May 27, 2010
I want to store List<Class> object to ViewState, when i try to do this than its giving me error to make class serialize,but my class is partial class so didn't get serialize keyword on class how can i store List object to viewstate.
View 4 Replies
Jan 3, 2011
i want to store IQueryable value to ViewState. my code is as below:
Private
Property _Query()
As IQueryable
Get
Return
CType(ViewState("_Query"), IQueryable)
End
Get
Set(ByVal value
As IQueryable)
ViewState("_Query") = value
End
Set
but when i run my page i get following error:
Type 'System.Data.Linq.DataQuery`1[[DynamicQueries.VW_EmployeeProfile_Filter, DynamicQueries, ersion=1.0.0.0, Culture=neutral, PublicKeyToken=null]]' in Assembly 'System.Data.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' is not marked as serializable
what should i do to get rid of this error. previously i was doing like this:
Private Shared _Query As IQueryable
but problem is that in Multi users environament, Shared variable is making problem, that is why i want to store it in ViewState.
View 4 Replies
Feb 28, 2011
As you know viewstate can recognize as a vulnarable item if we do not encrype it I know how to encrype the viewstate that I define in a web page but my problem start from here I downloaded a software which help you to exract the unencrypted viewstate of every website the link of that software is as follow:
[URL]
but when I make even empty page without viewstate ,this program can extract the viewstae of my page but if check some website like google ,yahoo,amazoon
View 15 Replies