簡體   English   中英

ASP.NET從代碼背后設置頁面標題

[英]ASP.NET Set Page Title from Code Behind

我正在使用ASP.NET C#創建數據驅動頁面,並希望使用后面的代碼動態設置頁面標題

<%@ Page Title="" Language="C#" MasterPageFile="~/FLMaster.master" AutoEventWireup="true" CodeFile="legal-expenses-insurance-news-item.aspx.cs" Inherits="legal_expenses_insurance_news_legal_expenses_insurance_news_item" %>

我嘗試在頁面中使用較低的單獨標題標簽,但這也不起作用。 任何人都可以建議如何做到這一點。

using System;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace MyApplication
{
    public partial class _Default : Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            this.Title = "Title of my page";
        }
    }
}

您可以從aspx.cs (文件后面的代碼)修改上面的頁面標題。

如果要直接在.aspx文件中執行此操作,請嘗試以下操作:

<% this.Title = "Some Title" %>

如果您在@Page指令中正確設置了Language = "C#" ,這就行了,我看到了。

來自MSDN的頁面類引用

Page有一個Title屬性

protected void Page_Load(object sender, EventArgs e)
{
    this.Title = "Title";
}

您應該從aspx頁面中刪除Title =“”。 它將覆蓋代碼隱藏中的Title集

<%@ Page Language="C#" MasterPageFile="~/FLMaster.master" AutoEventWireup="true" CodeFile="legal-expenses-insurance-news-item.aspx.cs" Inherits="legal_expenses_insurance_news_legal_expenses_insurance_news_item" %>

    protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
        {
            this.Title = "Title";
        }
    }
    

我知道這是一個舊線程,但我發現Page.Title並不總是被覆蓋,但是Page.Header.Title可以(大部分)......所以我對Master代碼隱藏的動態標題標簽的解決方案是:

    if (Page.Header != null)
    {
        if (Page.Header.Title == null || !Page.Header.Title.Contains("COMPANYNAME"))
        {
            var otitle = Page.Header.Title;
            if (otitle == null || otitle.Length==0) {
                var textinfo = System.Threading.Thread.CurrentThread.CurrentCulture.TextInfo;
                otitle = textinfo.ToTitleCase(this.Parent.GetType().Name.Replace("_"," ").Replace("aspx",""));
            }
            Page.Header.Title = "COMPANYNAME" + " - " + otitle;
        }
        Page.Header.Title = Page.Header.Title.Replace("COMPANYNAME", Auth.getSetting("companyName"));
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM