J'avais un projet VS2008 qui affichait cet avertissement et je ne pouvais trouver de solution nulle part - peut-être que mon google-fu est faible.
Dans tous les cas, la solution apparente consiste à s'assurer que TagName est le nom de la classe de contrôle.
Donc pour mon exemple, ce qui suit a affiché l'avertissement:
<%@ Register Src="~/path/to/Control.ascx" TagName="tagName" TagPrefix="tagprefix" %>
<tagprefix:tagName runat="server" id="controlID" />
Mais le changer pour:
<%@ Register Src="~/path/to/Control.ascx" TagName="Control" TagPrefix="tagprefix" %>
<tagprefix:Control runat="server" id="controlID" />
le corrige.
YMMV.
Cela ressemble à une reconstruction classique de votre solution et au problème de "fermeture et réouverture de Visual Studio".
Il est possible que cela soit également lié à un problème similaire auquel j’ai répondu à l’emplacement Résolution de l'avertissement "Validation (): l'élément‘ xxxx ’n’est pas pris en charge" dans Visual Studio 2005/2008 .
Cela peut également se produire si l'élément que vous essayez d'ajouter se trouve dans les balises d'un autre élément dans lequel il ne devrait pas figurer.
Par exemple:
<asp:Button ID="button" runat="server" >
<asp:Repeater ID="repeater" runat="server"></asp:Repeater>
</asp:Button>
Ou dans mon cas, placer un <asp:Repeater>
dans un <asp:UpdatePanel>
et oublier de le mettre dans le <ContentTemplate>
:
<asp:UpdatePanel ID="upPanel" runat="server">
<ContentTemplate>
<asp:Repeater ID="rep" runat="server">
</asp:Repeater>
</ContentTemplate>
</asp:UpdatePanel>
Apparemment, cela peut également se produire si le nom de l'espace de noms dans le fichier .ascx ne correspond pas à celui du fichier ascx.cs (codebehind). Encore une question à vérifier.
Vérifiez que vous êtes peut-être sur ContentPlaceHolderID = "MainContent" sur Asp.net, alors placez le code sur un nouvel espace réservé