Treeview - Access Masterpage Object From Regular Page?
Jul 20, 2010
In a project I'm working on, the master page codebehind does a load of complex checks and confirmations that decide the navigation list displayed on the TreeView of the page. Now, I need a way to access this list from another front-end page, such as "frontpage.aspx".
This serves two purposes. One, the masterpage will hide pages on the navigation list the user shouldn't have access to, but the user can still enter the page by typing the page name into the URL manually. By being able to browse through the TreeView, I can isolate the whole authorization into a single method by simply checking if the page name exists within the currently used TreeView.
Two, this will allow me to easily change the displayed content of any page without checking the database or storing sessions for whatever specific rights the current user has, as I can just look if the TreeView contains "Products Admin" for example, and then use that to hide or display the section of the page that has to do with "Product Admin" functionality.
I tried to write a little function to reset the form to default. Therefore I want to access the Controls of the page. I'm using a MasterPage. Maybe because of that, I have no access to the ContolsCollection via Page.Controls.
i have a masterpage and an default.aspx page that derives from masterpage. On default.apsx, i list products. when i click add basket buton that product is added to shoppingbasket. i do this using jquery. On mastepage,there is a label that shows how many product is in shopping basket. i want to do this. when i click add basket on default.aspx, label control on masterpage show the new product count on shoppingbasket.How can i access masterpage control and change using javascript/jquery from default.aspx.
masterpage with a contentPlacholder multiple pages which use this masterpage and implement a base-class (fooPage) fooPage has a certain property (fooProperty)
[Code]....
Obviously this is not going to work - but how can I achieve this?
I know the alternative: call a method from the masterPage in the contentPage with fooProperty as a parameter - but i would like to rather have a pull-system in this case...
I am trying to access the txtNotes textbox on the MasterPage using the following code and I get and error saying "Object reference not set to an instance of an object.
I have 2 masterpages. (Default.master and User.master).I have a hidden field in Default.master then how can i get the hidden field value of Default.master file from User.master.is there any way to access that hidden field like: Request.form("hidID") ?
Work on Asp.net VS08. In my master page i need to fill a treeview form database.I done it,i set the NavigationUrl value. When user click a leaf, then they see there wanted page. But then the MasterPage tree become expanded on root. I want the tree will not expanded and tree will the same as before click on leaf.
am using asp .net 3.5 web forms with VB.I have a masterpage that is populating a treeview from a sql db. When a user clicks on the name in the tree it passes the employee identifier (employee number) to a label on the master page i have hidden. FROM the CONTENT page i am reading the label on the master page and updating the label on the content page to match the label on the master page so i can use the emp number to display info. At least that what i want. However, the content page is not posting back when the label updates of course and its one clikc behind becuase there is no post back. Is there a way to make the page postback when a label changes or a textbox for that matter.Here is how i am updating the label control On the mastepage :
Public Property EmpCode() As [String] Get Return Label360.Text
When I click on one of my treenode, I need to set the node.target to the "ContentPlaceHolder1", ie, keep the tree menu as still and let the content page displayed at the right part of the page. However, the node doesn't seem to recognize the ContentPlaceHolder1.
2. I have tried using <frameset> with 2<frame> pages, this way, the node.target can recognize the frame id, code as below:
But, I need to check user's login permission, I did it with session("userId") variable and I ran into a problem that the session will only exists on the left frame(menu.aspx), not the content page(Main.aspx). I have tried both methods, but one way or the other, there is some function that I cannot accomplish.
I have an asp:TreeView in my MasterPage, which is loaded on demand from a database using some custom functions to fill the Tree. My tree will only ever be 4 levels deep (root -> 1st sublevel -> 2nd sublevel -> leaf nodes) What I want to achieve is preserving the expand/collapse state of this TreeView while navigating between different aspx pages, that all share the MasterPage holding my TreeView. I have been using the methods described in these resources:
[URL]
but I am still not getting the results I want... My TreeView markup in the MasterPage looks like this:
[Code]....
I am using a custom class to save and retrieve the state of the TreeView, the code is pasted below:
[Code]....
In my Page_Load on MasterPage I have:
[Code]....
where Reload() makes sure I'm loading the TreeView for the correct argument (based on a user selection) And in TreeView_Unload I have:
[Code]....
With all this in place, my TreeView is behaving almost as I want it.. I can expand the root node, it will be populated and I can browse to a new content page and have the same treeview appear in the MasterPage (with same expanded root)... BUT if I try to expand any of the 1st sublevel nodes, I end up with a completely collapsed treeview instead. After some debugging I have come to the conclusion that the "NodeExpanded" event gets the ROOT NODE as event argument instead of the 1st sublevel node that I clicked. When the user changes the option that makes the TreeView re-populate with new data, I simply do a "HttpContext.Current.Session("TreeViewState") = Nothing" to reset my saved state.
If you need more info / code snippets, let me know and I will post it.. But I felt there was no reason to post my complete source, as I have multiple files with about 500 lines of code each (there's a lot happening on the MasterPage, other than the TreeView)
I have an ImageControl inside an UpdatePanel. The image changes upon a Treeview located outside of theUpdatePanel. Im using the treeview _SelectedNodeChanged in the UpdatePanel Trigger. When I run the Web Application I get an Error theMasterPage could not find the Treeview for the Trigger.
I have an app that uses masterpages. On the masterPages I have a TreeView. I would like to only refresh the ContentPlaceHolder & not the Entire masterPage when a link is clicked on the treeView.
I have placed the contentplaceholder in an Updatepanel. I would like to if possible avoid including the menu in the update panel.
I have a page, Default.aspx, with its own code-behind file like this:
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; public partial class _Default : System.Web.UI.Page { public int[] anArray; }
What I'd like to do is access to "anArray" from a C# class (not tied to a page) declared in App_Code folder. What can I do?
Edit: As said in the first comment, I really apreciate your about refactoring my connection objects. However, what I'm really doing here is to rewrite an old PHP application in order to get comfortable with basic C# and ASP.NET, so this code will never go really live. So, I'm still intersted in a way (if any) to access an object declared in a code-behind code from a standard C# class.
Edit2: I removed the OdbcConnection object in order to focus to the real problem: how to refer to an object istantiated in a code-behind file from a C# class situated in App_Code?
I have an <%#Eval("FirstName")%> in the aspx page, I want to replace "FirstName" to <%#Eval(employee.FirstName)%> but "employee" object is instantiated in the codebehind like this:
Public employee As New Employee
How can I call this object in the aspx page? Should I can create an "employee" in the aspx? if so, how to do that.
I am trying to develop logic to add dynamic controls to page via class method. So I want to know how can we access the ASP.Net Page object reference in class method.
So I've got a partial in my MVC project that creates a JSON array. I want to move this chuck of code from the top of the html page body to the bottom with the rest of the JS for speed reasons. That is to say I want to store the JSON created as a string in C# and access it on the Site.Master.
I have a treeview which will be generated dynamically which need to be displayed on left side and when user clicks on a node it need to open a page on the right side of the same page. and each node has different aspx page. so whenever user selects a node the page details should be displayed on the right side .we can use an iframe on the page which will display the different pages clicked on the node.Is there any alternative i can use to display different pages based on the user selection on the right side without using iframe.
I have developed a website that allows users to upload office documents then uses the office object model to convert the document to an HTML file that it then displays in an iFrame. I have, of course, included references to Office.interop.word, and the site works fine on my development machine. When I uploaded it to my production server the site functions fine until I try to upload a document. I initially got a similar error that said "COM object not registered". I realized that Word wasn't installed on my production server. So I installed word and now when the server tries to access the word object model I receive the following error:
Retrieving the COM class factory for component with CLSID {000209FF-0000-0000-C000-000000000046} failed due to the following error: 80070005 Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))
I searched the registry for the corresponding CLSID and found a corresponding folder. I added full control to the IUSR_ account and due to the persistence of the error I eventually added full control to "everyone" and ensured these permissions inherited down to the rest of the folder. I then added full control to IUSR_ and again eventually added full control to "everyone" to my microsoft office folder. I don't know what other permissions to grant and where in order to make this "Access is denied" error go away. I must be granting them in the wrong place, because as far as I know I can't be any more permissive than "Everyone" "Full Control".