Frage

Frage,

Wie setze ich den Titel einer Seite aus einer Klasse? Ist es überhaupt möglich? Ich kann und habe den Seitentitel von einer Seite selbst und einer UserControl festgelegt.

Kann ich, wie mache ich das über eine Klasse mit C# .net

Hier ist, was ich tun möchte, von der ASPX -Seite, die ich eine Funktion nennen möchte, die im String -Titel übergeht, und die Klasse den Seitentitel festlegen lassen.

Sonpage.aspx.cs

page_onload()   {   setPageTitle(titleValue);   }

Setpagetitleclass.cs

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

Das Problem ist "Page.titel" ist nicht in der Klasse verfügbar

War es hilfreich?

Lösung

Erstens: Warum möchten Sie das tun? --- Geben Sie es zurück und lassen Sie die Seite sie einstellen ... Sie können es auf einer Basisklasse oder einer Masterseite festlegen.

Wenn Sie es immer noch tun möchten, ist es in der Schlange:

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

Andere Tipps

Sie müssen einen Verweis auf die Seite geben, die Sie den Titel von der C# -Klasse festlegen möchten, die Sie verwenden werden.

Könnten Sie mehr Details darüber veröffentlichen, was Sie versuchen zu tun?

Ich denke, der beste Weg wäre, dass die Klasse ein titlechangedes Ereignis enthüllt, das die Seite abonnieren kann.

Auf diese Weise koppeln Sie Ihre Lösung nicht fest und alles wird schön und sauber gehalten.

Ja. Sie müssen das Seitenobjekt errungen. Auf der Seite und der UserControls ist dies relativ einfach.

Page.Title = "My Title";
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top