Condividi tramite


CatalogPartCollection Costruttori

Definizione

Inizializza una nuova istanza della classe CatalogPartCollection.

Overload

CatalogPartCollection()

Inizializza una nuova istanza vuota della classe CatalogPartCollection.

CatalogPartCollection(ICollection)

Inizializza una nuova istanza della classe CatalogPartCollection passando un insieme ICollection di controlli CatalogPart.

CatalogPartCollection(CatalogPartCollection, ICollection)

Inizializza una nuova istanza della classe CatalogPartCollection passando in un insieme ICollection dei controlli CatalogPart esistenti in una zona e in un ulteriore insieme di controlli.

Commenti

La CatalogZoneBase zona che contiene CatalogPart controlli è in genere il controllo che crea un CatalogPartCollection oggetto tramite il CreateCatalogParts metodo . Tuttavia, è anche possibile creare un oggetto personalizzato CatalogPartCollection per altri scopi programmatici.

CatalogPartCollection()

Inizializza una nuova istanza vuota della classe CatalogPartCollection.

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

Commenti

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

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

Vedi anche

Si applica a

CatalogPartCollection(ICollection)

Inizializza una nuova istanza della classe CatalogPartCollection passando un insieme ICollection di controlli CatalogPart.

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

Parametri

catalogParts
ICollection

Insieme ICollection di controlli CatalogPart.

Esempio

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

Il codice nel Button1_Click metodo crea un ArrayList oggetto , aggiunge i due CatalogPart controlli nella pagina all'oggetto e quindi crea un nuovo CatalogPartCollection oggetto usando il CatalogPartCollection costruttore . Illustra anche come è possibile apportare modifiche in batch ai controlli sottostanti CatalogPart , anche se la raccolta stessa è di sola lettura. Il codice esegue un ciclo nell'insieme, aggiornando la Description proprietà di ogni controllo.

protected void Button1_Click(object sender, EventArgs e)
{
  ArrayList list = new ArrayList(2);
  list.Add(PageCatalogPart1);
  list.Add(DeclarativeCatalogPart1);
  // Pass an ICollection object to the constructor.
  CatalogPartCollection myParts = new CatalogPartCollection(list);
  foreach (CatalogPart catalog in myParts)
  {
    catalog.Description = "My " + catalog.DisplayTitle;
  }

  // Use the IndexOf property to locate a CatalogPart control.
  int PageCatalogPartIndex = myParts.IndexOf(PageCatalogPart1);
  myParts[PageCatalogPartIndex].ChromeType = PartChromeType.TitleOnly;

  // Use the Contains method to see if a CatalogPart control exists.
  if (myParts.Contains(PageCatalogPart1))
  {
    WebPart closedWebPart = null;
    WebPartDescriptionCollection descriptions = PageCatalogPart1.GetAvailableWebPartDescriptions();
    if (descriptions.Count > 0)
    {
      closedWebPart = PageCatalogPart1.GetWebPart(descriptions[0]);
      closedWebPart.AllowClose = false;
    }
  }
  
  // Use indexers to display the details of the CatalogPart controls.
  Label1.Text = String.Empty;
  Label1.Text =
    "<h3>PageCatalogPart Details</h3>" +
    "ID: " + myParts[0].ID + "<br />" +
    "Count: " + myParts[0].GetAvailableWebPartDescriptions().Count;
  Label1.Text += 
    "<h3>DeclarativeCatalogPart Details</h3>" +
    "ID: " + myParts["DeclarativeCatalogPart1"].ID + "<br />" +
    "Count: " + myParts["DeclarativeCatalogPart1"].GetAvailableWebPartDescriptions().Count;
}
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) 
    Dim list As New ArrayList(2)
    list.Add(PageCatalogPart1)
    list.Add(DeclarativeCatalogPart1)
    ' Pass an ICollection object to the constructor.
    Dim myParts As New CatalogPartCollection(list)
    Dim catalog As CatalogPart
    For Each catalog In  myParts
        catalog.Description = "My " + catalog.DisplayTitle
    Next catalog
    
    ' Use the IndexOf property to locate a CatalogPart control.
    Dim PageCatalogPartIndex As Integer = _
      myParts.IndexOf(PageCatalogPart1)
    myParts(PageCatalogPartIndex).ChromeType = PartChromeType.TitleOnly
    
    ' Use the Contains method to see if a CatalogPart control exists.
    If myParts.Contains(PageCatalogPart1) Then
        Dim closedWebPart As WebPart = Nothing
        Dim descriptions As WebPartDescriptionCollection = _
          PageCatalogPart1.GetAvailableWebPartDescriptions()
        If descriptions.Count > 0 Then
            closedWebPart = PageCatalogPart1.GetWebPart(descriptions(0))
            closedWebPart.AllowClose = False
        End If
    End If
    
    ' Use indexers to display the details of the CatalogPart controls.
    Label1.Text = String.Empty
    Label1.Text = _
      "<h3>PageCatalogPart Details</h3>" & _
      "ID: " & myParts(0).ID + "<br />" & _
      "Count: " & myParts(0).GetAvailableWebPartDescriptions().Count
    Label1.Text += _
      "<h3>DeclarativeCatalogPart Details</h3>" & _
      "ID: " & myParts("DeclarativeCatalogPart1").ID & "<br />" & _
      "Count: " & myParts("DeclarativeCatalogPart1") _
        .GetAvailableWebPartDescriptions().Count

End Sub 

Quando si carica la pagina in un browser, è possibile passare alla modalità catalogo selezionando Catalogo nel controllo elenco a discesa Modalità di visualizzazione . Facendo clic sul pulsante Visualizza proprietà CatalogPart si accede all'oggetto CatalogPartCollection e vengono visualizzate determinate proprietà dei controlli contenuti CatalogPart . Inoltre, se si posiziona il puntatore del mouse sul testo del titolo all'interno del bordo del DeclarativeCatalogPart controllo, è possibile visualizzare il nuovo testo della descrizione aggiunto al controllo quando si fa clic sul pulsante (la descrizione viene visualizzata in una descrizione comando). Se si fa clic sul collegamento Catalogo pagine per visualizzare il PageCatalogPart controllo, si scoprirà che ha anche una descrizione aggiornata.

Commenti

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

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

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

Vedi anche

Si applica a

CatalogPartCollection(CatalogPartCollection, ICollection)

Inizializza una nuova istanza della classe CatalogPartCollection passando in un insieme ICollection dei controlli CatalogPart esistenti in una zona e in un ulteriore insieme di controlli.

public:
 CatalogPartCollection(System::Web::UI::WebControls::WebParts::CatalogPartCollection ^ existingCatalogParts, System::Collections::ICollection ^ catalogParts);
public CatalogPartCollection (System.Web.UI.WebControls.WebParts.CatalogPartCollection existingCatalogParts, System.Collections.ICollection catalogParts);
new System.Web.UI.WebControls.WebParts.CatalogPartCollection : System.Web.UI.WebControls.WebParts.CatalogPartCollection * System.Collections.ICollection -> System.Web.UI.WebControls.WebParts.CatalogPartCollection
Public Sub New (existingCatalogParts As CatalogPartCollection, catalogParts As ICollection)

Parametri

existingCatalogParts
CatalogPartCollection

Insieme ICollection di controlli CatalogPart esistenti in una zona.

catalogParts
ICollection

Insieme ICollection di controlli CatalogPart aggiuntivi.

Vedi anche

Si applica a