Tôi đã đọc qua một số bài đăng/bài viết về cách thực hiện việc này và tôi vẫn không nhận được tiêu đề trang từ trang nội dung. Các trang của tôi hiển thị OK ngoại trừ tôi không thể lấy tiêu đề được đặt từ trang nội dung (tất cả các trang đều có Tiêu đề được đặt theo trang chính). Dưới đây là codebehind cho trang chủ của tôi:Cách đặt Tiêu đề của Trang từ trang nội dung web trong ASP.NET 3.5
Partial Class zSEO
Inherits System.Web.UI.MasterPage
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
Page.Header.Title = "Dynamically set in Master page"
End Sub
End Class
Dưới đây là phần còn lại của trang chủ:
<%@ Master Language="VB"
EnableTheming="true"
Inherits="zSEO"
CodeFile="zSEO.master.vb" %>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div id="container">
<div id="content">
<asp:contentplaceholder id="ContentPlaceHolder1" runat="server">
</asp:contentplaceholder>
</div>
</div>
</form>
</body>
</html>
Tuy nhiên, đó là trong trang nội dung web mà tôi muốn thiết lập giá trị của cho trang và tôi đã đặt này trong trang nội dung thử nghiệm của tôi:
Public Partial Class zShowAd
Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
Page.Header.Title = "Dynamically set TITLE value in the content(child) page"
End Sub
End Class
Kỳ lạ thay, tôi không thể có được debugger để dừng lại trên dòng trên trong trang nội dung - chỉ trên correspon dòng ding trong trang chính. Rõ ràng, tôi bối rối về điều này.
Tôi đã đọc có nhiều cách khác để làm điều này nhưng điều này dường như có thể thực hiện được từ những gì tôi đọc tại hướng dẫn của Scott Mitchell tại: Dynamically setting the Page Title in ASP.NET. Cụ thể, tôi đã cố gắng làm theo điều này từ bài viết: "Hơn nữa, nếu bạn đang sử dụng trang chính, mã này có thể hoạt động, như được viết, từ trang cái hoặc trang ASP.NET sử dụng trang chính. một kịch bản, khu vực phải được xác định trong trang chính, nhưng trang ASP.NET vẫn có thể truy cập nó thông qua Page.Header. "
Cảm ơn các bạn. Tôi nghĩ rằng đó là một chút phản trực giác rằng Page_Load của trang chính sẽ đến SAU KHI Page_Load của trang nội dung nhưng bây giờ nghĩ về trang chủ giống như một điều khiển người dùng nó có ý nghĩa hơn. BTW, tôi đã bỏ bê "Handles Me.Load" trên Page_Load trong tệp .aspx và ngay sau khi tôi thêm nó, thì trình gỡ rối dừng lại ở đó trên một điểm ngắt. Cảm ơn nhiều. –