Persisting Links On An Asp.net Page -a Job For Viewstate?
Dec 29, 2010
I've got a master page with a section for subnavigation links on it:
<div id="sub_nav" runat="server"></div>
I programatically populate this with Hyperlinks when my main asp:Menu data is bound depending on the address of the page I'm on.
This works fine and all my correct submenu stuff shows up on each page. The problem is that when one of these pages does a postback, I lose all the links that were in my sub_nav div.
Now, I could just populate the div with links every time regardless of whether the master page load is a postback or not, but I figured there is a better way of doing this. I was thinking enabling the viewstate on the div and links inside it might persist them through postbacks, but apparently that is not how viewstate works.
View 3 Replies
Similar Messages:
Apr 28, 2010
Maybe it's been a long day but I'm having trouble persisting a collection backed by the ASP.NET ViewState in a CompositeControl. Here's a simplified version:
public class MyControl : CompositeControl
{
public Collection<MyObject> MyObjectCollection
{
get {
return (Collection<MyObject>)ViewState["coll"] == null ?
new Collection<MyObject>()
: (Collection<MyObject>)ViewState["coll"];
}
set { ViewState["coll"] = value; }
}
}
public partial class TestPage : System.Web.UI.Page
{
protected void btn_Click(object sender, EventArgs e)
{
myControl1.MyObjectCollection.Add(new MyObject());
}
}
When the button is clicked, the event hander btn_Click executes fine, but the setter for MyObjectCollection never gets called, hence the new MyObject() never gets persisted.
View 1 Replies
Mar 3, 2010
I have a control (say, a DataGrid or a ComboBox) which is a child of a user control. I want to DataBind it on every request, rather than have it's state persist through ViewState. I need to leave EnableViewState=true however. This means, I think, that I need to call DataBind before TrackViewState() is called.
I read the fantastic blog post TRULY Understanding ViewState and it answers my question in 4. Initializing child controls programmatically. However, the article's solutions are less-than-ideal: create child controls dynamically (I'm not and can't -- too much existing code), use a 3rd party CodeExpressionBuilder (would much prefer this was in code-behind), and use OnPreInit (which "doesn't help you what-so-ever if you are developing a CONTROL").
View 1 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
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
Sep 24, 2010
I have a shopping cart page (Cart.aspx) that has a button that will (sometimes) post to a third party payment gateway, if payment is necessary. The payment gateway will process the payment and then do a silent post to my website (Order.aspx) so I can update the order status.
Order.aspx always throws an invalid viewstate error, even though viewstate is disabled on the page.
What's happening is that Cart.aspx (which has viewstate enabled) posts to the payment gateway, and the gateway will post it back as part of the silent post. Even though Order.aspx has viewstate disabled and validation disabled, it still tries to validate the __viewstate field it's being given.
I know setting EnableViewState=false will disable the rendering of the __viewstate field, but if another page provides the field, shouldn't it still skip validation? I tried calling ViewState.Clear() on the Page_Init event of Order.aspx, but ViewState is apparently empty. how to get around this? I don't want to disable ViewState on Cart.aspx (in some cases it may be necessary), but I can't figure out how to clear it on Order.aspx.
View 1 Replies
Dec 23, 2010
Using ASP.Net 4.0, MVC 2, Visual Studio 2010.
I am building a chat control, which is a div with a background image, textarea, text box and some image. The CSS for this div on the Master Page is:
[Code]....
When a user navigates to the page where they can start a chat session by clicking on an icon, I use jQuery to change the CSS, like so:
[Code]....
The CSS for showing the chat is the same as the above CSS, only .chatWindowShow does not have the display:none property.
The problem is that once I navigate to another page, the div is hidden again, the CSS does not persist accross postbacks for some reason. What I want is that once the chat window is shown, no matter what other pages the users go to it will continue to show, until they click the close icon in the chat window.
So, how can I persist this CSS page accross all pages? I thought that removing the CSS class and adding the new one via jQuery actually modificate the inline HTML, but I guess not. Do I need to use some other jQuery to accomplish this?
Here is the HTML markup for my chat window:
[Code]....
And the jQuery which toggles the view when you click on the chatRight div:
[Code]....
View 3 Replies
Feb 17, 2010
I'm writing an ASP.Net application (no AJAX, but maybe) and there's a requirement to have a list of companies graded under a traffic light system. I intend to have these in a collapsible hierarchical list on the Master page, e.g. Red expands to show companies, and then companies can be further expanded.
how can I keep the expanded list in the same place, with the same content visible, between page loads?
View 1 Replies
Oct 12, 2010
how can DropDownList attributes be persisted accross page Postbacks?
Example:
DropdownList1.AutoPostBack = True
DropdownList1.items(0).Attributes.Add("Attribute1","somevalue")
On Postback the attribute is no longer available (ie. attributes.count=0).
I tried persisting using the code below, but was unsuccessful:
Before PostBack: ViewState.Add("DDL","DropdownList1")
On PostBack: DropdownList1 = ViewState("DDL")
This generated the error: DropDownlist is not marked as serializable.
I than tried:
Before PostBack: Session.Add("DDL","DropdownList1")
On PostBack: DropdownList1 = Session("DDL")
This did not err but attributes were still not available.
View 4 Replies
Mar 2, 2011
I want to create a gridview with checkboxes. (only vb.net)
1) persist checkbox rows in paging in vb.net not c#
2) add the checked rows to datatable datasource and show on next page in paging
View 2 Replies
Nov 22, 2010
Here's an odd one.
I have a master page with links to other pages in the site. Those links use tilde paths (like "~/dir1/page2.aspx"). On most of the pages in the site that use this master page, there is no problem. The problem only seems to be on a few pages that use the master page, the links are VERY wrong, it tries to use the ~ as part of the link (so they are[URL]. It's as if it is treating the tilde as a literal under certain
View 1 Replies
Apr 3, 2011
I want to have 4 links in the sidebar of master page which every other form (content page) in my web application inherits.
<table>
<tr>
<td width= "150px">
<asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
<asp:Menu runat="server" ID="MainMenu1" CssClass="MasterContent" StaticSubMenuIndent="30px">
<Items>
<asp:MenuItem Text="My Software" NavigateUrl="~/MySoftware.aspx"></asp:MenuItem>
<asp:MenuItem Text="Check Out" NavigateUrl="~/CheckOut.aspx"></asp:MenuItem>
<asp:MenuItem Text="View Shopping Cart" NavigateUrl="~/ShoppingCart.aspx"></asp:MenuItem>
<asp:MenuItem Text="Continue Shopping" NavigateUrl="~/Start.aspx"></asp:MenuItem>
</Items>
</asp:Menu>
</asp:ContentPlaceHolder>
</td>
<td width="900px">
<asp:ContentPlaceHolder ID="ContentPlaceHolder2" runat="server">
</asp:ContentPlaceHolder>
</td>
</tr>
</table>
This is the content in the master page as you can see there are 4 menu items i tried to form as sidebar and i tried to inherit in home.aspx(one of the content pages) as follows:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Start.aspx.cs" Inherits="WebStore._Start"
MasterPageFile="~/Webstore.Master" %>
<asp:Content ID="StartSideBar" runat="server" ContentPlaceHolderID="ContentPlaceHolder1">
But unfortunately the sidebar is not at all getting displayed. I know i'm doing fundamentally wrong some where. My intention is to have web pages to have sidebar like this. It is a screenshot of my intended page.
View 1 Replies
Jan 21, 2010
I want to develop an asp.net page through which I can specify the URL of any page which contains links of many files & directories. I want to download them all. Similar to DownThemAll plugin of FireFox.
i.e.
"MyPage.htm" file contains many links to files/directories located on the same server.
now I want to write a function which can download all these file if I provide
"www.mycustomdomain.comMypage.htm" as input.
View 3 Replies
Feb 11, 2010
Im working on a little hobby project. I already have written the code to get a url, download the header and return the mime type / content type.However, the step before this is the one im stuck on - i need to retrieve the contents of all the urls on the page based inside a tag, and in quotes i.e.
...
<link rel='shortcut icon' href="/static/favicon.ico" type="image/x-icon" />
...
Would find the favicon link.Is there anything helpful in the .net library or is this going to have to be a case for regex?
View 4 Replies
Apr 29, 2010
I have two links in my aspx page. one link "A" when i click it ...it is downloading some document when i click it other link "B" when I click it ....it redirects me to some other page.
Both links triggers function from code behind. Both links works fine when i first come onto page but when i click A it shows me message to download it "open" "save" "cancel" problem is when i click cancel I remain on the same page but now no links work neither link A nor link B. I guess there is some problem with the state my page is in . How i can avoid this?
Code so far:
<asp:Linkbutton ID="linkbutton1" runat="server" Text="A" onClick="Codebehindmethod" />
<asp:Linkbutton ID="linkbutto2" runat="server" Text="B" onClick="Codebehindmethod1" >
View 1 Replies
Jul 29, 2010
I have users input links (like file paths and web pages links) to a database via a form. When they put file paths (e.g C:Program Files...) it stores them properly.However, I have a page in my application that pulls the links from the database so that the user can click on those links. For links which include spaces (like the one I just used as an example) it replaces the space with %20 ... This messes up my link and it doesn't work. How can I fix this?-I number records that are saved into my database in a specific way. I have an ID for each record which is a two digit number. For number that are low (1-9) I would like it to display as 01, 02, 03, etc. But if I save it in that form into the database, it goes from 01 to 1.How can I fix this? Users need to see it as 01, 02, etc...
View 6 Replies
Sep 13, 2010
I'm fairly new to mvc and I'm just looking for a best practice on hiding action links in the master page depending on the user logged in. Since the master page doesn't receive a model I'm not sure how to pull this off the right (MVC) way.
View 3 Replies
Feb 22, 2010
Only in master file, and only in <link> tag Links.Content.Site_css doesn't work. That is, if I have
[Code]....
If I put the same thing in <title>; or if I put the same link tag in a regular aspx file; or if I use Links.Scripts.jquery_js - everything seems to be working fine. Is there anything specific for resolving <link> tags in master page? I am using MVC 2 RC2
View 4 Replies
Jun 28, 2010
I have downloaded the page and I'd like to place all links into the array of strings. I'm not sure how to make the regex work. I can't uncomment the thing either because it balks at the quotes. The idea is to place each link found on the page into list. How would I handle relative links if the link found is ../ or ./? For just ./ that could be changed to / but otherwise you have to map the thing to get a full url. Also each url put into the list has to be the local domain and not an external domain.
[Code]....
View 6 Replies
Mar 13, 2010
there is properties that make links like , creat new user url , and destination url , now i want these links to open in a diffrent page ,i know that with the <a> tag you can add the property "target" , with the build in links in the log in control i dont have this optiondo someone have other idea how to do it ?
View 1 Replies
Mar 11, 2011
I need to get links from the following url http://thomas.loc.gov/home/gpoxmlc112/. I wrote the code:
[Code]....
On the page, I only want to get the urls of the xml files. But, the .xml are not getting pulled? I checked the view source, the links are not placed in a table or row (maybe thats part of the problem) ? I can't figure out of to get the links? My expected results are:http://thomas.loc.gov/home/gpoxmlc112/sr79_rs.xmlhttp://thomas.loc.gov/home/gpoxmlc112/h1_ih.xmletc...
[Code]....
View 1 Replies
Oct 28, 2010
What ASP.NET page lifecycle event can I write code in to determine the size of the viewstate that being sent out? Also, is it possible to determine the size without parsing through the rendered HTML (like a property on the page object) or is parsing the only way?
What I'd like to do is log the sizes, specifically if they cross a certain threshold.
View 3 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
Sep 9, 2010
I need to create tabs for links in my .aspx page. I want the links to be separated out either with vertical lines or tabs. This code is part of my Master page.
<div
style="text-align:right"> <a
href
=
"start_page.aspx">Home Page</a>
<a
href
=
"">Default Page</a>
<a
href
=
"http://licensemon.enp.ril.com/">License Monitoring</a> <br
/><br
/></div>
View 2 Replies
Sep 17, 2010
What would be the standard easiest way to change the css class of the link that is the link for the page that is currently displayed. So that it will reflect on the menu links.
View 3 Replies