Freigeben über


WebPartCollection Konstruktoren

Definition

Initialisiert eine neue Instanz der WebPartCollection-Klasse.

Überlädt

WebPartCollection()

Initialisiert eine neue, leere Instanz der WebPartCollection-Klasse.

WebPartCollection(ICollection)

Initialisiert eine neue Instanz eines WebPartCollection-Objekts, indem eine ICollection-Auflistung von WebPart-Steuerelementen übergeben wird.

WebPartCollection()

Initialisiert eine neue, leere Instanz der WebPartCollection-Klasse.

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

Hinweise

Der WebPartCollection Konstruktor initialisiert eine leere Instanz der WebPartCollection -Klasse. Das Objekt selbst ist schreibgeschützt und verfügt über keine Methode zum Hinzufügen einzelner WebPart Steuerelemente. Daher haben Sie wenig Gelegenheit, diesen Konstruktor zu verwenden.

Weitere Informationen

Gilt für:

WebPartCollection(ICollection)

Initialisiert eine neue Instanz eines WebPartCollection-Objekts, indem eine ICollection-Auflistung von WebPart-Steuerelementen übergeben wird.

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)

Parameter

webParts
ICollection

Eine ICollection von WebPart-Steuerelementen.

Ausnahmen

webParts ist null.

Ein Objekt in der webParts-Auflistung ist null.

- oder -

Ein Objekt in der webParts-Auflistung ist nicht vom Typ WebPart.

Beispiele

Im folgenden Codebeispiel wird die Verwendung des WebPartCollection Konstruktors auf einer Webpartseite veranschaulicht. Dieses Beispiel umfasst drei Teile:

  • Der Code für die Seite in einer partiellen Klasse.

  • Die Webseite, die die Steuerelemente enthält.

  • Eine Beschreibung der Funktionsweise des Beispiels in einem Browser.

Der erste Teil des Codebeispiels enthält den Code für die Seite in einer partiellen Klasse. Beachten Sie, dass die Button1_Click -Methode ein WebPartCollection -Objekt erstellt, das aus allen Steuerelementen besteht, auf WebPart die in der WebPartManager.WebParts -Eigenschaft verwiesen wird, die alle WebPart Steuerelemente auf der Seite enthält. Die -Methode durchläuft alle Steuerelemente und schaltet die -Eigenschaft jedes Steuerelements ChromeState um, die bestimmt, ob dieses Steuerelement normal oder minimiert ist.

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

Der zweite Teil des Codebeispiels ist die Webseite, die die Steuerelemente enthält. Beachten Sie, dass es sich bei den in WebPartZone1 deklarierten Steuerelementen um Standardsteuerelemente ASP.NET Serversteuerelemente handelt. Da sie jedoch zur Laufzeit als GenericWebPart Steuerelemente umschlossen werden und die GenericWebPart Klasse von der WebPart -Klasse erbt, werden die Steuerelemente zur Laufzeit automatisch als WebPart Steuerelemente behandelt und daher in das WebPartCollection -Objekt eingeschlossen.

<%@ 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>

Nachdem Sie die Seite in einem Browser geladen haben, klicken Sie auf die Schaltfläche ChromeState umschalten , und beachten Sie, dass der Code in der partiellen Klasse das WebPartCollection Objekt durchläuft und die Steuerelemente alternativ minimiert oder in den Normalzustand zurückgibt. Wenn Sie auch wiederholt auf die Schaltfläche Aufzählungsliste1 Titel umschalten klicken, wird der Titel des obersten Steuerelements in alternative Werte geändert.

Hinweise

Der WebPartCollection Konstruktor initialisiert eine Instanz der WebPartCollection -Klasse, indem er eine Auflistung von Steuerelementen WebPart übergibt.

Obwohl ein WebPartCollection Objekt schreibgeschützt ist und es keine Methode zum Hinzufügen einzelner Steuerelemente gibt, können Sie eine eigene ICollection Auflistung von Steuerelementen erstellen und diese an den WebPartCollection Konstruktor übergeben. Dadurch können Sie benutzerdefinierte Sammlungen erstellen und Massenvorgänge für sie ausführen. Sie können auch auf die zugrunde liegenden Steuerelemente in der Auflistung zugreifen und deren Eigenschaftswerte programmgesteuert ändern.

Weitere Informationen

Gilt für: