У меня есть сайт с несколькими страницами, и я хотел бы названия страниц, чтобы быть:Создание подзаголовок с мастер-страницей и ContentPlaceHolder
Foo - 1st Page
Foo - 2nd Page
Foo - 3rd Page
Я создал мастер-страницу со следующим кодом:
<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="Foo.master.cs" Inherits="Foo" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Foo - <asp:ContentPlaceHolder ID="SubTitle" runat="server"></asp:ContentPlaceHolder></title>
</head>
<body>
<asp:ContentPlaceHolder ID="MainContent" runat="server">
</asp:ContentPlaceHolder>
</body>
</html>
а затем каждая страница выглядит следующим образом:
<%@ Page Language="C#" MasterPageFile="~/Foo.Master" %>
<asp:Content ID="Content1" ContentPlaceHolderID="SubTitle" runat="server">1st Page</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<a href="Page2.aspx">Page 2</a>
</asp:Content>
Когда я загрузить страницу в браузере я ожидаю название должно быть Foo - 1st Page
, но это всего лишь 1st Page
.
Источник HTML является:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title>
1st Page
</title></head>
<body>
<a href="Page2.aspx">Page 2</a>
</body>
</html>
Что я делаю неправильно?
Что вы видите, как сгенерированной
@ThatBlairGuy - Я добавил источник html к моему вопросу. Шаблон главной страницы Visual Studio имеет ContentPlaceHolder, названный 'title' в теге title MasterPage. Я просто добавил текст «Foo -» перед ним и переименовал его в «SubTitle». –