2010-07-10 26 views
8

Así que tengo un archivo llamado WebParts.aspx que se parece a esto -Elemento 'ToolkitScriptManager' no es un elemento conocido

<%@ 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> 

y que produce los resultados deseados de la creación de 3 paneles de pestañas dentro de un contenedor pestaña.

Sin embargo, cuando cambio de esa página para utilizar un MasterPage.master a tener este aspecto -

<%@ 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 me da la siguiente advertencia:

Elemento 'ToolkitScriptManager' no es un elemento conocido. Esto puede ocurrir si hay un error de compilación en el sitio web , o si falta el archivo web.config .

en la línea siguiente:

<asp:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server"> 

Respuesta

23

Su segundo archivo no contiene la línea

<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %> 

que tiene en su primer archivo. El hecho de que la página maestra conozca el prefijo asp: y el ensamblado/espacio de nombres que ha asociado, no significa que la página secundaria sí lo haga.

Un mejor enfoque sería la de registrar el ensamblado/espacio de nombres/prefijo de etiqueta dentro de su web.config, así:

<configuration> 
    <!-- ... --> 
    <system.web> 
     <!-- ... --> 
     <pages> 
      <controls> 
       <add tagPrefix="asp" 
        namespace="AjaxControlToolkit" 
        assembly="AjaxControlToolkit" /> 
      </controls> 
     </pages> 
    </system.web> 
</configuration> 
+0

Muchas gracias Domenic !! – Das

0

Elemento 'ToolkitScriptManager' no es un elemento conocido. Esto puede ocurrir si hay un error de compilación en el sitio web o si falta el archivo web.config .

En caso de que alguien se encuentre con esto. La solución para mí fue que las propiedades del proyecto importado apuntaban al marco 4.5.2. Seleccioné un marco anterior, y luego seleccioné 4.5.2 nuevamente. Esto eliminó el error mencionado junto con docenas de otros.

Cuestiones relacionadas