문제

ASP.NET 2.0을 사용하면 사용할 수 있습니다 Title 페이지 제목을 변경하려면 속성 :

Page.Title = "New Title";

그러나 ASP.NET 1.1에는 a가 없습니다 Title 속성 Page 클래스, 코드 베어드에서 페이지 제목을 어떻게 변경할 수 있습니까?

도움이 되었습니까?

해결책

ASP.NET 1.1을 사용하면 먼저 runat 제목 마크 업의 속성 :

<title id="PageTitle" runat="server">WebForm1</title>

그런 다음 뒤의 코드에서 :

씨#

// We need this name space to use HtmlGenericControl
using System.Web.UI.HtmlControls;

namespace TestWebApp
{

      public class WebForm1 : System.Web.UI.Page
      {
            // Variable declaration and instantiation
            protected HtmlGenericControl PageTitle = new HtmlGenericControl();

            private void Page_Load(object sender, System.EventArgs e)
            {
                  // Set new page title
                  PageTitle.InnerText = "New Page Title";
            }
      }
}



VB

Imports System.Web.UI.HtmlControls

Namespace TestWebApp

    Public Class WebForm1
        Inherits System.Web.UI.Page

        Protected PageTitle As HtmlGenericControl = New HtmlGenericControl()

        Private Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)

            PageTitle.InnerText = "New Page Title"
        End Sub

...

    End Class
End Namespace

다른 팁

Andreas Grech의 답변은 제목 태그가있는 ASPX 페이지 뒤의 코드에서 실행할 때 매우 잘 작동합니다.

그러나 제목 태그를 웹 사용자 컨트롤 ASPX 페이지에서 실행 되었습니까? 위의 결과는 오류가 발생합니다 (Pagetitle이 웹 사용자 컨트롤에 표시되지 않기 때문에).

따라서 웹 사용자 컨트롤의 경우 Grech의 솔루션이 지시하는대로 수행하지만 다음과 같은 조정을 수행하십시오.

1) page_load 전에 pagetitle 컨트롤을 선언하지 마십시오. 대신에:

2) 다음과 같이 page_load 내부에서 선언하십시오.

htmlgenericcontrol = page.findcontrol ( "pagetitle")으로 Dim Pagetitle

그런 다음 값을 설정하십시오.

여기서 요점에서 마스터 페이지에서 제목을 설정하면

<head><title>Master Title</title></head>

코드 측면에서 제목을 추가하려는 코드는 작동하지 않습니다.

Page.Title="Page Title"

이것은 위의 효과가 없습니다. 마스터 페이지에서 제목을 제거해야합니다. 그런 다음 추가 코드가 필요하지 않습니다. 페이지 _load에서 아래 코드를 추가하십시오.

Page.Title="Page Title"

그리고 그것은 작동 할 것입니다

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top