Udostępnij za pośrednictwem


WebPartCollection Konstruktory

Definicja

Inicjuje nowe wystąpienie klasy WebPartCollection.

Przeciążenia

WebPartCollection()

Inicjuje WebPartCollection puste nowe wystąpienie klasy.

WebPartCollection(ICollection)

Inicjuje nowe wystąpienie WebPartCollection obiektu, przekazując ICollection kolekcję WebPart kontrolek.

WebPartCollection()

Inicjuje WebPartCollection puste nowe wystąpienie klasy.

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

Uwagi

Konstruktor WebPartCollection inicjuje puste wystąpienie WebPartCollection klasy. Sam obiekt jest tylko do odczytu i nie ma metody dodawania do niego pojedynczych WebPart kontrolek. W związku z tym nie będzie można użyć tego konstruktora.

Zobacz też

Dotyczy

WebPartCollection(ICollection)

Inicjuje nowe wystąpienie WebPartCollection obiektu, przekazując ICollection kolekcję WebPart kontrolek.

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

Parametry

webParts
ICollection

Kontrolki ICollectionWebPart .

Wyjątki

webParts to null.

Obiekt w kolekcji webParts to null.

-lub-

Obiekt w kolekcji webParts nie jest typem WebPart.

Przykłady

Poniższy przykład kodu przedstawia użycie konstruktora WebPartCollection na stronie składników Web Part. Ten przykład ma trzy części:

  • Kod strony w klasie częściowej.

  • Strona sieci Web zawierająca kontrolki.

  • Opis działania przykładu w przeglądarce.

Pierwsza część przykładu kodu zawiera kod strony w klasie częściowej. Należy pamiętać, że Button1_Click metoda tworzy WebPartCollection obiekt, który składa się ze wszystkich WebPart kontrolek, do których odwołuje się WebPartManager.WebParts właściwość , która zawiera wszystkie kontrolki WebPart na stronie. Metoda iteruje wszystkie kontrolki i przełącza właściwość każdej kontrolki ChromeState , która określa, czy ta kontrolka jest normalna, czy zminimalizowana.

using System;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;

public partial class webpartcollectioncs : System.Web.UI.Page
{
  protected void Button1_Click(object sender, EventArgs e)
  {

    WebPartCollection partCollection = mgr1.WebParts;

    foreach (WebPart part in partCollection)
    {
      if (part.ChromeState != PartChromeState.Minimized)
        part.ChromeState = PartChromeState.Minimized;
      else
        part.ChromeState = PartChromeState.Normal;
    }
  }
  protected void Button2_Click(object sender, EventArgs e)
  {
    WebPartCollection partCollection = WebPartZone1.WebParts;

    if (partCollection[0].Title == "My Link List")
      partCollection[0].Title = "Favorite Links";
    else
      partCollection[0].Title = "My Link List";
  }
}
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Web.UI.WebControls.WebParts

Partial Public Class webpartcollectionvb

  Inherits System.Web.UI.Page

  Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs)

    Dim partCollection As WebPartCollection = mgr1.WebParts
    Dim part As WebPart

    For Each part In partCollection
      If part.ChromeState <> PartChromeState.Minimized Then
        part.ChromeState = PartChromeState.Minimized
      Else
        part.ChromeState = PartChromeState.Normal
      End If
    Next

  End Sub

  Protected Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs)

    Dim partCollection As WebPartCollection = WebPartZone1.WebParts

    If partCollection(0).Title = "My Link List" Then
      partCollection(0).Title = "Favorite Links"
    Else
      partCollection(0).Title = "My Link List"
    End If

  End Sub

End Class

Drugą częścią przykładu kodu jest strona internetowa zawierająca kontrolki. Zwróć uwagę, że zadeklarowane WebPartZone1 w klasie kontrolki są standardowymi ASP.NET kontrolkami serwera, ale ponieważ są one opakowane jako GenericWebPart kontrolki w czasie wykonywania, a GenericWebPart klasa dziedziczy z WebPart klasy, kontrolki są automatycznie traktowane jako WebPart kontrolki w czasie wykonywania i dlatego są uwzględniane w WebPartCollection obiekcie.

<%@ Page Language="C#" 
  Codefile="webpartcollection.cs" 
  Inherits="webpartcollectioncs" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
      <asp:WebPartManager ID="mgr1" runat="server" />
      <asp:WebPartZone ID="WebPartZone1" runat="server">
        <ZoneTemplate>
          <asp:BulletedList 
            ID="BulletedList1" 
            Runat="server"
            DisplayMode="HyperLink" 
            Title="Favorite Links" >
            <asp:ListItem Value="http://msdn.microsoft.com">
              MSDN
            </asp:ListItem>
            <asp:ListItem Value="http://www.asp.net">
              ASP.NET
            </asp:ListItem>
            <asp:ListItem Value="http://www.msn.com">
              MSN
            </asp:ListItem>
          </asp:BulletedList>
          <br />
          <asp:Calendar ID="Calendar1" runat="server" 
            Title="My Calendar" />
        </ZoneTemplate>
      </asp:WebPartZone>
    </div>
    <hr />
    <asp:Button ID="Button1" runat="server" Width="200"
      Text="Toggle ChromeState" OnClick="Button1_Click" />
    <br />
    <asp:Button ID="Button2" runat="server" Width="200"
        Text="Toggle BulletedList1 Title" 
        OnClick="Button2_Click"/>
    </form>
</body>
</html>
<%@ Page Language="vb"
  Codefile="webpartcollection.vb" 
  Inherits="webpartcollectionvb" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
      <asp:WebPartManager ID="mgr1" runat="server" />
      <asp:WebPartZone ID="WebPartZone1" runat="server">
        <ZoneTemplate>
          <asp:BulletedList 
            ID="BulletedList1" 
            Runat="server"
            DisplayMode="HyperLink" 
            Title="Favorite Links" >
            <asp:ListItem Value="http://msdn.microsoft.com">
              MSDN
            </asp:ListItem>
            <asp:ListItem Value="http://www.asp.net">
              ASP.NET
            </asp:ListItem>
            <asp:ListItem Value="http://www.msn.com">
              MSN
            </asp:ListItem>
          </asp:BulletedList>
          <br />
          <asp:Calendar ID="Calendar1" runat="server" 
            Title="My Calendar" />
        </ZoneTemplate>
      </asp:WebPartZone>
    </div>
    <hr />
    <asp:Button ID="Button1" runat="server" Width="200"
      Text="Toggle ChromeState" OnClick="Button1_Click" />
    <br />
    <asp:Button ID="Button2" runat="server" Width="200"
        Text="Toggle BulletedList1 Title" 
        OnClick="Button2_Click"/>
    </form>
</body>
</html>

Po załadowaniu strony w przeglądarce kliknij przycisk Przełącz element ChromeState i zwróć uwagę, że kod w pętli częściowej klasy przechodzi przez WebPartCollection obiekt i na przemian minimalizuje kontrolki lub zwraca je do normy. Lub, jeśli wielokrotnie klikasz przycisk Przełącz punktowanąlistę1 Tytuł , tytuł najbardziej górnej kontrolki zostanie zmieniony na wartości alternatywne.

Uwagi

Konstruktor WebPartCollection inicjuje WebPartCollection wystąpienie klasy, przekazując kolekcję WebPart kontrolek.

WebPartCollection Mimo że obiekt jest tylko do odczytu i nie ma metody dodawania do niego pojedynczych kontrolek, można utworzyć własną ICollection kolekcję kontrolek i przekazać ją do konstruktoraWebPartCollection. Dzięki temu można tworzyć kolekcje niestandardowe i wykonywać na nich operacje zbiorcze. Możesz również uzyskać dostęp do podstawowych kontrolek w kolekcji i programowo zmieniać ich wartości właściwości.

Zobacz też

Dotyczy