所以我有一个名为WebParts.aspx的文件,看起来像这样 -
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebParts.aspx.cs" Inherits="e.WebParts" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<!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></title>
</head>
<body>
  <form id="form1" runat="server">
    <asp:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server">
    </asp:ToolkitScriptManager>
    <div>
      <asp:TabContainer ID="TabContainer1" runat="server">
      <asp:TabPanel ID="TabPanel1" runat="server">
      <ContentTemplate>Page One</ContentTemplate>
      </asp:TabPanel>
      <asp:TabPanel ID="TabPanel2" runat="server">
      <ContentTemplate>Page Two</ContentTemplate>
      </asp:TabPanel>
      <asp:TabPanel ID="TabPanel3" runat="server">
      <ContentTemplate>Page Three</ContentTemplate>
      </asp:TabPanel>
      </asp:TabContainer>
  </div>
  </form>
</body>
</html>
这样就可以在标签容器中创建3个选项卡面板.
但是,当我更改该页面以使用MasterPage.master看起来像这样 -
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebParts.aspx.cs" Inherits="eservice.WebParts"  MasterPageFile="~/MasterPage.Master"%>
<asp:Content ID="Content2"  
  ContentPlaceHolderID="ContentPlaceHolder1" 
  runat="server">
  <asp:LoginView ID="LoginView1" runat="server">
    <LoggedInTemplate>
       <p id="backtoblog"></p>
       <p> Preferences</p>
        <div>
    <asp:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server">
    </asp:ToolkitScriptManager>
    <div>
      <asp:TabContainer ID="TabContainer1" runat="server">
      <asp:TabPanel ID="TabPanel1" runat="server">
      <ContentTemplate>Page One</ContentTemplate>
      </asp:TabPanel>
      <asp:TabPanel ID="TabPanel2" runat="server">
      <ContentTemplate>Page Two</ContentTemplate>
      </asp:TabPanel>
      <asp:TabPanel ID="TabPanel3" runat="server">
      <ContentTemplate>Page Three</ContentTemplate>
      </asp:TabPanel>
      </asp:TabContainer>
  </div>
   </div>
  </LoggedInTemplate>
    <AnonymousTemplate>
      You are not logged in.
      <br />
      Please login to access eservice
    </AnonymousTemplate>
  </asp:LoginView>
  </asp:Content>
VS2008给了我以下警告:
元素'ToolkitScriptManager'不是已知元素.如果网站中存在编译错误,或者缺少web.config文件,则会发生这种情况.
在以下行:
<asp:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server">
Dom*_*nic 25
您的第二个文件不包含该行
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
你在第一个文件中有.仅仅因为母版页知道asp:前缀以及与之关联的程序集/命名空间,并不意味着子页面会这样做.
更好的方法是在web.config中注册程序集/命名空间/标记前缀,如下所示:
<configuration>
    <!-- ... -->
    <system.web>
        <!-- ... -->
        <pages>
            <controls>
                <add tagPrefix="asp"
                     namespace="AjaxControlToolkit"
                     assembly="AjaxControlToolkit" />
            </controls>
        </pages>
    </system.web>
</configuration>
| 归档时间: | 
 | 
| 查看次数: | 48175 次 | 
| 最近记录: |