Développer Réduire
Cet article a fait l'objet d'une traduction automatique. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source
Ce sujet n'a pas encore été évalué - Évaluez ce sujet

Control.AddParsedSubObject, méthode

Informe le contrôle serveur qu'un élément, XML ou HTML, a été analysé, et ajoute l'élément à l'objet d' ControlCollection du contrôle serveur.

Espace de noms :  System.Web.UI
Assembly :  System.Web (dans System.Web.dll)
protected virtual void AddParsedSubObject(
	Object obj
)

Paramètres

obj
Type : System.Object
Object qui représente l'élément analysé.

À moins que vous substituiez le, cette méthode ajoute automatiquement des objets d' LiteralControl à l'objet d' ControlCollection du contrôle serveur. Cette collection est accessible via la propriété d' Control.Controls .

L'exemple suivant est un contrôle serveur personnalisé qui utilise la méthode de AddParsedSubObject pour déterminer si les éléments déclarés entre les balises d'ouverture et de fermeture de ce contrôle sont des contrôles serveur Web d' TextBox . Si c'est le cas, ils sont ajoutés à un objet d' ArrayList , items. Lorsque la méthode substituée d' CreateChildControls est appelée, elle effectue une itération au sein de ArrayList et ajoute chaque objet dans celui-ci à ControlCollection du contrôle serveur personnalisé.

Note de sécuritéNote de sécurité

Cet exemple contient une zone de texte qui accepte l'entrée d'utilisateur, qui constitue une menace éventuelle pour la sécurité. Par défaut, les pages Web ASP.NET vérifient que l'entrée d'utilisateur n'incluent pas de script ou d'éléments HTML. Pour plus d'informations, consultez Script Exploits Overview.


// Custom ControlBuilder class. Interprets nested tag name "myitem" as a textbox. 
public class MyControlBuilder : ControlBuilder 
{
   public override Type GetChildControlType(String tagName,
                                       IDictionary attributes)
   {
      if (String.Compare(tagName, "myitem", true) == 0) 
      {
         return typeof(TextBox);
      }
      return null;
   }
}

[ 
ControlBuilderAttribute(typeof(MyControlBuilder)) 
]
public class MyControl : Control
{
   // Store all the controls specified as nested tags.
   private ArrayList items = new ArrayList();

   // This function is internally invoked by IParserAccessor.AddParsedSubObject(Object).
   protected override void AddParsedSubObject(Object obj) 
   {
      if (obj is TextBox) 
      {
         items.Add(obj);
      }
   }

   // Override 'CreateChildControls'. 
   protected override void CreateChildControls()
   {
      System.Collections.IEnumerator myEnumerator = items.GetEnumerator();
      while(myEnumerator.MoveNext())
          this.Controls.Add((TextBox)myEnumerator.Current);
   }
}    


.NET Framework

Pris en charge dans : 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (rôle principal du serveur non pris en charge), Windows Server 2008 R2 (rôle principal du serveur pris en charge avec SP1 ou version ultérieure ; Itanium non pris en charge)

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.
Cela vous a-t-il été utile ?
(1500 caractères restants)

Ajouts de la communauté

AJOUTER
© 2013 Microsoft. Tous droits réservés.