intérieur de ma page, je donne les résultats suivants:ASP.NET UserControl n'initialise pas Controls enfant
<aspe:UpdatePanel runat="server" ID="updatePanel">
<ContentTemplate>
<local:KeywordSelector runat="server" ID="ksKeywords" />
</ContentTemplate>
</aspe:UpdatePanel>
Le contrôle KeywordSelector
est une commande que je DEFINE dans le même ensemble et local
est mis en correspondance à son espace de noms.
Le contrôle est composé de plusieurs autres contrôles et est défini comme tel:
<%@ Control Language="C#" AutoEventWireup="true"
CodeBehind="KeywordSelector.ascx.cs"
Inherits="Keywords.KeywordSelector" %>
et a un bon nombre de contrôles serveur propre, tous définis comme membres dans le fichier .designer.cs
.
Cependant, pendant aucune partie du cycle de vie du contrôle-t-il des objets de contrôle de l'enfant et ne produit HTML:
- Tous les membres définis dans le fichier
.designer.cs
sontnull
. - Appels à
HasControls
renvoientfalse
. Les appels versEnsureChildControls
ne font rien. - La collection
Controls
est vide.
Suppression de la UpdatePanel
n'a pas bien. J'ai essayé de le reproduire dans une page propre avec un nouveau UserControl
et la même chose arrive. J'utilise ASP.NET sur .NET Framework 3.5 SP1 avec le serveur Web intégré.
Qu'est-ce qui me manque ici?
Mise à jour # 1: Après le commentaire de Rob, j'ai regardé dans OnInit
et a constaté que la UserControl
ne détecte pas qu'il a des contrôles enfants. De plus, CreateControlCollection
n'est jamais appelé!
Êtes-vous charger dynamiquement ce contrôle? – thismat
Non. Lisez à propos de ceux aussi ... –
Avez-vous redéfini OnInit et supprimez la ligne base.OnInit (e); par accident? – Rob