Idioma

CatalogPartCollection Construtores

Definição

Inicializa uma nova instância da CatalogPartCollection classe.

Sobrecargas

Nome Descrição
CatalogPartCollection()

Inicializa uma nova instância vazia da CatalogPartCollection classe.

CatalogPartCollection(ICollection)

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

CatalogPartCollection(CatalogPartCollection, ICollection)

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

Observações

A CatalogZoneBase zona que contém CatalogPart controlos é tipicamente o controlo que cria um CatalogPartCollection objeto, através do CreateCatalogParts método. No entanto, também pode criar o seu próprio CatalogPartCollection objeto para outros fins programáticos.

CatalogPartCollection()

Inicializa uma nova instância vazia da CatalogPartCollection classe.

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

Observações

O CatalogPartCollection construtor inicializa uma instância vazia da CatalogPartCollection classe. Esta sobrecarga do construtor é usada internamente pela CatalogZone classe no seu CreateCatalogParts método para criar um objeto de coleção vazio. A zona cria então instâncias de todos os CatalogPart controlos declarados no modelo da zona filha e utiliza um método interno da coleção para os adicionar.

Não podes usar esta sobrecarga do CatalogPartCollection construtor para criar uma nova instância de a CatalogPartCollection e adicionar CatalogPart controlos a ela. Tens de usar uma das outras sobrecargas para o CatalogPartCollection construtor em vez disso.

Consulte também

Aplica-se a

CatalogPartCollection(ICollection)

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

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 dos CatalogPart controlos.

Exemplos

O exemplo de código seguinte demonstra como se pode criar um código personalizado CatalogPartCollectione realizar uma operação em lote para alterar os controlos individuais CatalogPart na coleção, mesmo sendo apenas leitura. Para o código completo necessário para executar o exemplo, consulte a secção Exemplo do CatalogPartCollection tópico de visão geral da aula.

O código do Button1_Click método cria um ArrayList objeto, adiciona os dois CatalogPart controlos da página ao objeto e depois cria um novo CatalogPartCollection objeto usando o CatalogPartCollection construtor. Também demonstra como pode fazer alterações em lote nos controlos subjacentes CatalogPart , mesmo que a coleção em si seja apenas de leitura. O código percorre a coleção em loop, atualizando a Description propriedade de cada controlo.

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 carrega a página num navegador, pode colocá-la em modo catálogo selecionando Catálogo no controlo de lista suspensa do Modo de Visualização . Ao clicar no botão Display CatalogPart Properties , acede ao CatalogPartCollection objeto e apresenta certas propriedades dos controlos contidos CatalogPart . Além disso, se posicionares o ponteiro do rato sobre o texto do título dentro da borda do DeclarativeCatalogPart controlo, podes ver o novo texto de descrição que foi adicionado ao controlo quando clicaste no botão (a descrição aparece numa dica de ferramenta). Se clicar no link do Catálogo de Páginas para mostrar o PageCatalogPart controlo, verá que também tem uma descrição atualizada.

Observações

O CatalogPartCollection construtor inicializa uma instância da CatalogPartCollection classe e passa uma coleção de CatalogPart controlos. Isto é uma sobrecarga do CatalogPartCollection construtor que podes usar para criar um novo CatalogPartCollection objeto e adicionar CatalogPart controlos a ele.

Embora a CatalogPartCollection instância criada pelo construtor seja apenas de leitura, ainda pode aceder programaticamente aos controlos individuais CatalogPart na coleção e chamar as suas propriedades e métodos.

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

Consulte também

Aplica-se a

CatalogPartCollection(CatalogPartCollection, ICollection)

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

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 controlos existentes CatalogPart numa zona.

catalogParts
ICollection

Um ICollection dos controlos adicionais CatalogPart .

Consulte também

Aplica-se a