Share via


EditorPartCollection Costruttori

Definizione

Inizializza una nuova istanza della classe EditorPartCollection.

Overload

EditorPartCollection()

Inizializza una nuova istanza vuota della classe EditorPartCollection.

EditorPartCollection(ICollection)

Inizializza una nuova istanza della classe EditorPartCollection passando un insieme ICollection di controlli EditorPart.

EditorPartCollection(EditorPartCollection, ICollection)

Inizializza una nuova istanza della classe EditorPartCollection passando un insieme EditorPartCollection di controlli EditorPart e un insieme ICollection di controlli EditorPart aggiuntivi.

EditorPartCollection()

Inizializza una nuova istanza vuota della classe EditorPartCollection.

public:
 EditorPartCollection();
public EditorPartCollection ();
Public Sub New ()

Commenti

Il EditorPartCollection costruttore inizializza un'istanza vuota della EditorPartCollection classe . Questo overload del costruttore viene utilizzato internamente dalla EditorZone classe nel relativo CreateEditorParts metodo per creare un oggetto raccolta vuoto. La zona crea quindi istanze di tutti i EditorPart controlli dichiarati nel modello di zona figlio e usa un metodo interno per aggiungerli alla raccolta.

Non è possibile utilizzare questo overload del EditorPartCollection costruttore per creare una nuova istanza di EditorPartCollection e aggiungervi EditorPart controlli. È invece necessario usare uno degli altri overload per il EditorPartCollection costruttore.

Vedi anche

Si applica a

EditorPartCollection(ICollection)

Inizializza una nuova istanza della classe EditorPartCollection passando un insieme ICollection di controlli EditorPart.

public:
 EditorPartCollection(System::Collections::ICollection ^ editorParts);
public EditorPartCollection (System.Collections.ICollection editorParts);
new System.Web.UI.WebControls.WebParts.EditorPartCollection : System.Collections.ICollection -> System.Web.UI.WebControls.WebParts.EditorPartCollection
Public Sub New (editorParts As ICollection)

Parametri

editorParts
ICollection

Insieme ICollection di controlli EditorPart.

Esempio

Nell'esempio di codice seguente viene illustrato come creare un oggetto personalizzato EditorPartCollection e, anche se la raccolta è di sola lettura, eseguire comunque un'operazione batch per modificare i singoli EditorPart controlli nella raccolta. Per il codice completo necessario per eseguire l'esempio, vedere la sezione Esempio della panoramica della EditorPartCollection classe.

Il codice nell'evento Button1_Click crea un ArrayList oggetto , aggiunge due dei tre EditorPart controlli nella pagina all'oggetto e quindi crea un nuovo EditorPartCollection oggetto usando il EditorPartCollection costruttore . Viene inoltre illustrato come apportare modifiche ai controlli sottostanti EditorPart , anche se la raccolta è di sola lettura.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  protected void Button1_Click(object sender, EventArgs e)
  {
    ArrayList list = new ArrayList(2);
    list.Add(AppearanceEditorPart1);
    list.Add(PropertyGridEditorPart1);
    // Pass an ICollection object to the constructor.
    EditorPartCollection myParts = new EditorPartCollection(list);
    foreach (EditorPart editor in myParts)
    {
      editor.BackColor = System.Drawing.Color.LightBlue;
      editor.Description = "My " + editor.DisplayTitle + " editor.";
    }

    // Use the IndexOf property to locate an EditorPart control.
    int propertyGridPart = myParts.IndexOf(PropertyGridEditorPart1);
    myParts[propertyGridPart].ChromeType = PartChromeType.TitleOnly;

    // Use the Contains method to see if an EditorPart exists.
    if(!myParts.Contains(LayoutEditorPart1))
      LayoutEditorPart1.BackColor = System.Drawing.Color.LightYellow;
    
    // Use the CopyTo method to create an array of EditorParts.
    EditorPart[] partArray = new EditorPart[3];
    partArray[0] = LayoutEditorPart1;
    myParts.CopyTo(partArray,1);
    Label1.Text = "<h3>EditorParts in Custom Array</h3>";
    foreach (EditorPart ePart in partArray)
    {
      Label1.Text += ePart.Title + "<br />";
    }

  }

</script>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  Protected Sub Button1_Click(ByVal sender As Object, _
    ByVal e As EventArgs)
    
    Dim list As New ArrayList(2)
    list.Add(AppearanceEditorPart1)
    list.Add(PropertyGridEditorPart1)
    ' Pass an ICollection object to the constructor.
    Dim myParts As New EditorPartCollection(list)
    Dim editor As EditorPart
    For Each editor In myParts
      editor.BackColor = System.Drawing.Color.LightBlue
      editor.Description = "My " + editor.DisplayTitle + " editor."
    Next editor
    
    ' Use the IndexOf property to locate an EditorPart control.
    Dim propertyGridPart As Integer = _
      myParts.IndexOf(PropertyGridEditorPart1)
    myParts(propertyGridPart).ChromeType = PartChromeType.TitleOnly
    
    ' Use the Contains method to see if an EditorPart exists.
    If Not myParts.Contains(LayoutEditorPart1) Then
      LayoutEditorPart1.BackColor = System.Drawing.Color.LightYellow
    End If
    
    ' Use the CopyTo method to create an array of EditorParts.
    Dim partArray(2) As EditorPart
    partArray(0) = LayoutEditorPart1
    myParts.CopyTo(partArray, 1)
    Label1.Text = "<h3>EditorParts in Custom Array</h3>"
    Dim ePart As EditorPart
    For Each ePart In partArray
      Label1.Text += ePart.Title + "<br />"
    Next ePart

  End Sub

</script>

È possibile caricare la pagina in un browser e passare alla modalità di modifica selezionando Modifica nel controllo elenco a discesa Modalità di visualizzazione . È possibile fare clic sul menu dei verbi (freccia verso il basso) nella barra del titolo del TextDisplayWebPart controllo e fare clic su Modifica per modificare il controllo. Quando l'interfaccia utente di modifica è visibile, è possibile visualizzare tutti i EditorPart controlli. Fare clic sul pulsante Crea EditorPartCollection per visualizzare gli effetti sui due EditorPart controlli aggiunti all'oggetto EditorPartCollection .

Commenti

Il EditorPartCollection costruttore inizializza un'istanza della EditorPartCollection classe e passa una raccolta di EditorPart controlli. Si tratta di un overload del EditorPartCollection costruttore che è possibile usare per creare un nuovo EditorPartCollection oggetto e aggiungervi EditorPart controlli.

Anche se l'istanza EditorPartCollection creata dal costruttore è di sola lettura, è comunque possibile accedere ai singoli EditorPart controlli nella raccolta a livello di codice e chiamare le relative proprietà e metodi.

Uno scenario comune per l'uso del EditorPartCollection costruttore consiste nell'eseguire alcune operazioni batch su un intero set di EditorPart controlli, ad esempio la modifica del contenuto, l'aspetto o la posizione di un gruppo correlato.

Un altro scenario comune per l'uso del costruttore consiste nello EditorPartCollection sviluppo di controlli personalizzati EditorPart che si desidera associare a un controllo server, in modo che gli utenti possano modificare le proprietà personalizzate nel controllo. In questo scenario, il controllo server deve implementare l'interfaccia IWebEditable e, come parte di tale attività, deve implementare il CreateEditorParts metodo . In questo metodo, per consentire ai controlli personalizzati EditorPart di modificare il controllo server, è necessario aggiungere i EditorPart controlli a un'istanza ICollection , ad esempio un ArrayList oggetto . È quindi possibile passare la raccolta di EditorPart controlli al EditorPartCollection costruttore per creare un nuovo EditorPartCollection oggetto, che la EditorZoneBase zona usa per configurare tutti i controlli e avviare il processo di modifica.

Vedi anche

Si applica a

EditorPartCollection(EditorPartCollection, ICollection)

Inizializza una nuova istanza della classe EditorPartCollection passando un insieme EditorPartCollection di controlli EditorPart e un insieme ICollection di controlli EditorPart aggiuntivi.

public:
 EditorPartCollection(System::Web::UI::WebControls::WebParts::EditorPartCollection ^ existingEditorParts, System::Collections::ICollection ^ editorParts);
public EditorPartCollection (System.Web.UI.WebControls.WebParts.EditorPartCollection existingEditorParts, System.Collections.ICollection editorParts);
new System.Web.UI.WebControls.WebParts.EditorPartCollection : System.Web.UI.WebControls.WebParts.EditorPartCollection * System.Collections.ICollection -> System.Web.UI.WebControls.WebParts.EditorPartCollection
Public Sub New (existingEditorParts As EditorPartCollection, editorParts As ICollection)

Parametri

existingEditorParts
EditorPartCollection

Insieme ICollection di controlli EditorPart esistenti in una zona.

editorParts
ICollection

Insieme ICollection di controlli EditorPart non in una zona, ma creati a livello di codice.

Vedi anche

Si applica a