Share via


CatalogPartCollection Constructores

Definición

Inicializa una nueva instancia de la clase CatalogPartCollection.

Sobrecargas

CatalogPartCollection()

Inicializa una nueva instancia vacía de la clase CatalogPartCollection.

CatalogPartCollection(ICollection)

Inicializa una nueva instancia de la clase CatalogPartCollection pasando una colección ICollection de controles CatalogPart.

CatalogPartCollection(CatalogPartCollection, ICollection)

Inicializa una nueva instancia de la clase CatalogPartCollection pasando una colección ICollection de los controles CatalogPart existentes en una zona y una colección adicional de controles.

Comentarios

La CatalogZoneBase zona que contiene CatalogPart controles suele ser el control que crea un CatalogPartCollection objeto a través del CreateCatalogParts método . Sin embargo, también puede crear su propio CatalogPartCollection objeto para otros fines mediante programación.

CatalogPartCollection()

Inicializa una nueva instancia vacía de la clase CatalogPartCollection.

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

Comentarios

El CatalogPartCollection constructor inicializa una instancia vacía de la CatalogPartCollection clase . La clase de su CreateCatalogParts método usa internamente CatalogZone esta sobrecarga del constructor para crear un objeto de colección vacío. A continuación, la zona crea instancias de todos los CatalogPart controles declarados en la plantilla de zona secundaria y usa un método interno de la colección para agregarlos.

No puede usar esta sobrecarga del CatalogPartCollection constructor para crear una nueva instancia de CatalogPartCollection y agregarle CatalogPart controles. En su lugar, debe usar una de las otras sobrecargas para el CatalogPartCollection constructor.

Consulte también

Se aplica a

CatalogPartCollection(ICollection)

Inicializa una nueva instancia de la clase CatalogPartCollection pasando una colección ICollection de controles 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)

Parámetros

catalogParts
ICollection

Colección ICollection de controles CatalogPart.

Ejemplos

En el ejemplo de código siguiente se muestra cómo crear un personalizado CatalogPartCollectiony realizar una operación por lotes para cambiar los controles individuales CatalogPart de la colección aunque sea de solo lectura. Para obtener el código completo necesario para ejecutar el ejemplo, vea la sección Ejemplo del tema de información general de la CatalogPartCollection clase.

El código del Button1_Click método crea un ArrayList objeto , agrega los dos CatalogPart controles de la página al objeto y, a continuación, crea un nuevo CatalogPartCollection objeto mediante el CatalogPartCollection constructor . También muestra cómo puede realizar cambios por lotes en los controles subyacentes CatalogPart , aunque la propia colección sea de solo lectura. El código recorre en bucle la colección, actualizando la Description propiedad de cada control.

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 

Al cargar la página en un explorador, puede cambiar la página al modo de catálogo seleccionando Catálogo en el control de lista desplegable Modo de visualización. Al hacer clic en el botón Mostrar propiedades catalogpart , se obtiene acceso al CatalogPartCollection objeto y se muestran determinadas propiedades de los controles contenidos CatalogPart . Además, si coloca el puntero del mouse sobre el texto del título dentro del borde del DeclarativeCatalogPart control, puede ver el nuevo texto de descripción que se agregó al control al hacer clic en el botón (la descripción aparece en una información sobre herramientas). Si hace clic en el vínculo Catálogo de páginas para mostrar el PageCatalogPart control, verá que también tiene una descripción actualizada.

Comentarios

El CatalogPartCollection constructor inicializa una instancia de la CatalogPartCollection clase y pasa una colección de CatalogPart controles. Se trata de una sobrecarga del CatalogPartCollection constructor que puede usar para crear un nuevo CatalogPartCollection objeto y agregarle CatalogPart controles.

Aunque la CatalogPartCollection instancia creada por el constructor es de solo lectura, todavía puede acceder a los controles individuales CatalogPart de la colección mediante programación y llamar a sus propiedades y métodos.

Un escenario común para usar este constructor sería si desea realizar alguna operación por lotes en un conjunto completo de CatalogPart controles, como cambiar el contenido, la apariencia o la posición de un grupo de elementos relacionado.

Consulte también

Se aplica a

CatalogPartCollection(CatalogPartCollection, ICollection)

Inicializa una nueva instancia de la clase CatalogPartCollection pasando una colección ICollection de los controles CatalogPart existentes en una zona y una colección adicional de controles.

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)

Parámetros

existingCatalogParts
CatalogPartCollection

ICollection de los controles CatalogPart existentes en una zona.

catalogParts
ICollection

ICollection de controles CatalogPart adicionales.

Consulte también

Se aplica a