简体   繁体   中英

Setting the Page-Title in .Net using C# from a Class

Question,

How do i set the title of a page from a class. Is it even possible? I can and have set the page title from a page itself and a usercontrol.

Can I, How Do I do this via a class using C# .Net

Here is what im looking to do, From the Aspx Page i want to call a function that passes in the string title, and have the class set the page title.

SomePage.Aspx.CS

page_onload()   {   setPageTitle(titleValue);   }

SetPageTitleClass.CS

public static void setPageTitle(string iTitle)   {   Page.title = iTitle;  }

The problem is "Page.Title" is not available from the Class

First: why would you want to do that? --- give it back and let the page set it ... u can set it in a base class or master page.

If you still want to do it, is along the lines:

var page = (Page)HttpContext.Current.Handler;
page.Title = "someTitle";

You will need to pass in a reference to the Page you want to set the title of to the c# class you are going to use.

Could you post more detail about what you are trying to do?

I think the best way would be to have the class expose a TitleChanged event, which the page can subscribe to.

In this way, you are not tightly coupling your solution and everything is kept nice and clean.

Yes. You must get a hold of the Page object. In the Page and UserControls this is relatively easy.

Page.Title = "My Title";

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM