I have a function that sets the Theme for the page but I want to define this in a MasterPage for each page that uses that MasterPage. This seems like the most likely way to do this to me, am I doing something wrong?
Here is what I have:
[Code]....
If i copy this to an ASPX page it works but it doesn't seem to work at all in a MasterPage.
I am now in process doing theme for my web application.
This is how i want my Theme work :Whenever user choose to change the theme, the whole web site theme should changed accrodingly.
Most of the examples that i find out online require to assign the theme in Page_PreInit event in every page. The theme name is store in session variable.
My concern is that is there anyway to assign particular theme to whole web site without having assing it to every page and store the theme into session variable.
I have provided 2 theme in home page (default.aspx) , onclick of this link i am able to change the css path and image path according to the theme selected but once i login the image path are comming correctly accordinly to theme selected but the css (stylesheet) path is not changing.
when i select a theme and view the source of default page all the paths are changing but once loged css path is not changing.
I'm setting my site theme with the following code in my global.asax file, but if I go to a product page with a URL that has been rewritten through a rewriter, the global file doesn't affect the master page anymore and the page doesn't use the theme that is being set in the global file?
When I began my first ASP.NET project, I didn't know about Masterpages, which was a pain. Because I had to manually change each and every link on all of my web pages. This was all mainly for the top menu and side menus.
But now that I'm using a master page, I think it's going to be much easier. But, I'm running into an issue.
When the user loads default.aspx, they see the following on the top menu.
Which is how I want it. But, what if they click one of the links? Before, I just updated that code to make the button of that page the active one. But, if they're all inheriting the same page, how do I commit this changes? I don't want to omit that part and manually change it on each page, because that would beat the entire purpose of doing this.
I also don't want to create another master page for each link. That would also beat the purpose.
I have a ASP.NET C# 3.5 web application, where I am changing the masterpage & theme for certain pages that have ASP.NET controls. The problem is that when the masterpage/theme is changed, the ASP.NET ImageButtons on the child page cease to function altogether and show up as normal images. The html source for that page would show a disabled="disabled" field added to the ImageButtons at runtime. All other controls including ASP.NET Buttons work fine, only ImageButtons are effected. I've changed masterpages in files many times and have not come across this problem, probably because I rarely use ImageButtons. I'm beginning to think it may be a bug in .NET itself, but it could be code related. I've also executed a javascript function after load to set the disabled field to "enabled", which has no effect on the ImageButton but the source confirms it is enabled. The MasterPages / Child Pages are relatively straight forward and I've tried many different combinations to get it working. I'm changing the masterpage & theme via a function like:
I have a MasterPage (MasterPage.master) with 2 child MasterPages (specialMaster.master and standardMaster.master). From the MasterPage.master I need to get at some of the controls in one of the children, specialMaster.master, say for example to hide certain content if a session variable is not null.
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") ?
The problem is when am assigning my session table value to newly created table and if now am changing any coloumn name then the session table value also changing.
But my question is am assigning Session value to newly created table so how should session value should be affected?
I have a web-application with more than 5 themes. Each themes covers a completely different style for different customers. whenever we publish a new version of our application we send it for all of customers.
We specify theme in web.config file in <Page> tag. like
<page theme="Theme1" /> // or Theme2 for second customer.
with this approach we easily change the style of application from each other without writing codes which needs a new publish for each one.
With changing the theme="Theme1". nothing change and we didn't write a code in application , so why changing theme don't change the theme and we need a new publish?
we want to change it in web.config or somewhere else and with changing it the theme change without needing a new publish for each one.
Update :
I Publish Once and then copy the published version for each customer (5 times) then in each web.config file I change the theme="CustomerTheme". but only the theme which was active in publish process is usable in all of 5 versions and other 4 themes are un-usable Actually the main question is that why changes in Web.Config need a different publish while it is XML and do not need a complie. I should Add this note that, App_Theme include all of 5 themes so that all of them Compiles and are ready to use
This is the way I publish the application
Photo Link
Update 2
here IFound the exact problem reported by someone else. he resolve the problem but I can't underestand how he resolved this Issue.
I have a default page theme set in the <pages /> element of the root web.config, which, in addition to the rest of the website, is being applied to WebService .ASMX pages. I would like to prevent ASP.NET from applying the themes to .ASMX pages. you can edit 'DefaultWsdlHelpGenerator.aspx' in the .NET framework's root CONFIG folder (C:WindowsMicrosoft.NETFrameworkVERSIONCONFIGDefaultWsdlHelpGenerator.aspx) and specify <%@ Page Theme="" %>, but this only works if you are able to access that file on the server.
I have tried adding a <location /> element to the web.config which points at a specific .ASMX file, but that seems to be ignored as the .ASMX page is still being themed.
Is there any way to prevent ASP.NET from applying application themes to .ASMX files which works without modifying the system-level 'DefaultWsdlHelpGenerator.aspx' (mentioned above)?
Edit
I am able to work around this by allowing my base page type to define the applied theme, but even despite my workaround, I am wondering if there is a 'correct' way to override this rather ridiculous behavior in ASP.NET.
I am new to ASp.Net 3.5 and the concept of themes. I have a master page named ParentMaster in a web site along with a theme in the App_Themes folder. When i publish this website, i get 2 dll's one for the masterpage and one for the theme. Now i am inheriting the parent master page in another web project's child masterpage using the property
Inherits="ASP.masterpage_master"
Now i want to get the theme also like this. I have a theme dll that i have referenced and i need to set the theme on an aspx page based on this dll. How can i do that?
My site structure is like that I've 4 sub folders and few pages at roots when sub folder pages are viewed in browser their css breaks some of the images doesn't work well.
i download a css theme and i want use it in my website but i have some problem with menu in this theme menu use ListItem:
[Code]....
and the style for the menu id is:
[Code]....
but when i use a horizontal menu in my masterpage and set the rendering mode to list it's not working like the sample that i have. is there something that i have to change?
I imagine this would be simple, but I can't find an answer. We set the theme of a page based on a query string parameter (like '?theme=theme1' etc). I just want to know if there is an easy way to tell the theme name is valid, before setting it, or catching and handling the error if it is invalid. The error I get if the theme does not exists is:
"Theme 'theme1' cannot be found in the application or global theme directories."
I am not sure when the exception is thrown. All I can think of is searching the folder, but I would think there would be a simpler way.
I thought Theme1 should be additional to BaseTheme with Theme1 has higher priority in case of conflict. But Theme1 seems to have replaced BaseTheme completely and nothing in BaseTheme shows on the Default.aspx page. If this is the right behaviol, how to add additional theme to a page?
The PrintStyleSheet.css file has a set of printing css rules set in them wrapped in an @Media Print { } block.
I need a way to programmatically remove the PrintStyleSheet.css from the list of css files for ASP.NET to inject based on some flags. (Some instances we want to print the site verbatim without custom formatting).
I know i could build a seperate theme without the PrintStyleSheet.css in it and switch the theme programmatically, however this would introduce duplication of my master stylesheet which is not acceptable.
We have a page that creates a printable version of the customer's bill. We are using themes via <pages styleSheetTheme="CityDesign">. This page is not using the Master page nor has any style sheet associated with it. I have added <%@ Page Language="C#" EnableTheming="false" Theme="" %> to the page and protected void Page_PreInit(object sender, EventArgs e) { Page.Theme = String.Empty;} to the code behind. The page still has the theme applied.