Esporta (0) Stampa
Espandi tutto
Il presente articolo è stato tradotto automaticamente. Passare il puntatore sulle frasi nell'articolo per visualizzare il testo originale. Ulteriori informazioni.
Traduzione
Originale

Metodo Control.AddParsedSubObject

Notifica al controllo server che un elemento, XML o HTML, è stato analizzato e aggiunge l'elemento all'oggetto ControlCollection del controllo server.

Spazio dei nomi:  System.Web.UI
Assembly:  System.Web (in System.Web.dll)

protected virtual void AddParsedSubObject(
	Object obj
)

Parametri

obj
Tipo: System.Object
Oggetto Object che rappresenta l'elemento sottoposto ad analisi.

A meno che non venga sottoposto a override, questo metodo aggiunge automaticamente gli oggetti LiteralControl all'oggetto ControlCollection del controllo server. È possibile accedere a questo insieme tramite la proprietà Control.Controls.

Nell'esempio che segue vien illustrato un controllo server personalizzato che utilizza il metodo AddParsedSubObject per determinare se gli elementi dichiarati tra i tag di apertura e di chiusura del controllo sono controlli server Web TextBox. Se lo sono, vengono aggiunti a un oggetto ArrayList, items. Quando viene chiamato il metodo CreateChildControls sottoposto a override, viene fatto scorrete l'elenco ArrayList e ogni oggetto contenuto viene aggiunto all'insieme ControlCollection del controllo server personalizzato.

Nota sulla sicurezzaNota sulla sicurezza

L'esempio include una casella di testo che accetta l'input dell'utente e rappresenta quindi una potenziale minaccia alla sicurezza. Per impostazione predefinita, le pagine Web ASP.NET verificano che l'input dell'utente non includa script o elementi HTML. Per ulteriori informazioni, vedere 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

Supportato in: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (ruoli di base del server non supportati), Windows Server 2008 R2 (ruoli di base del server supportati con SP1 o versione successiva, Itanium non supportato)

.NET Framework non supporta tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.

Aggiunte alla community

AGGIUNGI
Mostra:
© 2014 Microsoft