Partilhar via


CatalogPartCollection Construtores

Definição

Inicializa uma nova instância da classe CatalogPartCollection.

Sobrecargas

CatalogPartCollection()

Inicializa uma nova instância vazia da classe CatalogPartCollection.

CatalogPartCollection(ICollection)

Inicializa uma nova instância da classe CatalogPartCollection passando uma coleção de ICollection de controles de CatalogPart.

CatalogPartCollection(CatalogPartCollection, ICollection)

Inicializa uma nova instância da classe CatalogPartCollection, passando uma coleção de ICollection dos controles de CatalogPart existentes em uma zona e uma coleção adicional de controles.

Comentários

A CatalogZoneBase zona que contém CatalogPart controles normalmente é o controle que cria um CatalogPartCollection objeto por meio do CreateCatalogParts método . No entanto, você também pode criar seu próprio CatalogPartCollection objeto para outras finalidades programáticas.

CatalogPartCollection()

Inicializa uma nova instância vazia da classe CatalogPartCollection.

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

Comentários

O CatalogPartCollection construtor inicializa uma instância vazia da CatalogPartCollection classe . Essa sobrecarga do construtor é usada internamente pela CatalogZone classe em seu CreateCatalogParts método para criar um objeto de coleção vazio. Em seguida, a zona cria instâncias de todos os CatalogPart controles declarados no modelo de zona filho e usa um método interno da coleção para adicioná-los.

Não é possível usar essa sobrecarga do CatalogPartCollection construtor para criar uma nova instância de um CatalogPartCollection e adicionar CatalogPart controles a ele. Você deve usar uma das outras sobrecargas para o CatalogPartCollection construtor.

Confira também

Aplica-se a

CatalogPartCollection(ICollection)

Inicializa uma nova instância da classe CatalogPartCollection passando uma coleção de ICollection de controles de 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

Um ICollection de controles de CatalogPart.

Exemplos

O exemplo de código a seguir demonstra como você pode criar um personalizado CatalogPartCollectione executar uma operação em lote para alterar os controles individuais CatalogPart na coleção, mesmo que seja somente leitura. Para obter o código completo necessário para executar o exemplo, consulte a seção Exemplo do tópico de visão geral da CatalogPartCollection classe.

O código no Button1_Click método cria um ArrayList objeto , adiciona os dois CatalogPart controles na página ao objeto e cria um novo CatalogPartCollection objeto usando o CatalogPartCollection construtor . Ele também demonstra como você pode fazer alterações em lote nos controles subjacentes CatalogPart , mesmo que a coleção em si seja somente leitura. O código faz loop pela coleção, atualizando a Description propriedade de cada controle.

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 

Ao carregar a página em um navegador, você pode alternar a página para o modo de catálogo selecionando Catálogo no controle de lista suspensa Modo de Exibição . Clicar no botão Exibir Propriedades do CatalogPart acessa o CatalogPartCollection objeto e exibe determinadas propriedades dos controles contidos CatalogPart . Além disso, se você posicionar o ponteiro do mouse sobre o texto do título na borda do DeclarativeCatalogPart controle, poderá ver o novo texto de descrição que foi adicionado ao controle quando você clicou no botão (a descrição aparece em uma Dica de Ferramenta). Se você clicar no link Catálogo de Páginas para exibir o PageCatalogPart controle, descobrirá que ele também tem uma descrição atualizada.

Comentários

O CatalogPartCollection construtor inicializa uma instância da CatalogPartCollection classe e passa em uma coleção de CatalogPart controles. Essa é uma sobrecarga do CatalogPartCollection construtor que você pode usar para criar um novo CatalogPartCollection objeto e adicionar CatalogPart controles a ele.

Embora a CatalogPartCollection instância criada pelo construtor seja somente leitura, você ainda pode acessar os controles individuais CatalogPart na coleção programaticamente e chamar suas propriedades e métodos.

Um cenário comum para usar esse construtor seria se você quiser executar alguma operação em lote em um conjunto inteiro de CatalogPart controles, como alterar o conteúdo, a aparência ou a posição de um grupo de itens relacionado.

Confira também

Aplica-se a

CatalogPartCollection(CatalogPartCollection, ICollection)

Inicializa uma nova instância da classe CatalogPartCollection, passando uma coleção de ICollection dos controles de CatalogPart existentes em uma zona e uma coleção 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

Um ICollection dos controles de CatalogPart existentes em uma zona.

catalogParts
ICollection

Um ICollection dos controles de CatalogPart adicionais.

Confira também

Aplica-se a