WebPartCollection Konstruktorer

Definition

Initierar en ny instans av WebPartCollection klassen.

Överlagringar

Name Description
WebPartCollection()

Initierar en tom ny instans av WebPartCollection klassen.

WebPartCollection(ICollection)

Initierar en ny instans av ett WebPartCollection objekt genom att skicka in en ICollection samling WebPart kontroller.

WebPartCollection()

Initierar en tom ny instans av WebPartCollection klassen.

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

Kommentarer

Konstruktorn WebPartCollection initierar en tom instans av WebPartCollection klassen. Själva objektet är skrivskyddat och har ingen metod för att lägga till enskilda WebPart kontroller i det. Därför har du inte mycket att göra med den här konstruktorn.

Se även

Gäller för

WebPartCollection(ICollection)

Initierar en ny instans av ett WebPartCollection objekt genom att skicka in en ICollection samling WebPart kontroller.

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)

Parametrar

webParts
ICollection

En ICollection av WebPart kontroller.

Undantag

webParts är null.

Ett objekt i webParts samlingen är null.

-eller-

Ett objekt i webParts samlingen är inte av typen WebPart.

Exempel

I följande kodexempel visas hur konstruktorn används WebPartCollection på en webbdelssida. Det här exemplet har tre delar:

  • Koden för sidan i en partiell klass.

  • Webbsidan som innehåller kontrollerna.

  • En beskrivning av hur exemplet fungerar i en webbläsare.

Den första delen av kodexemplet innehåller koden för sidan i en partiell klass. Observera att Button1_Click metoden skapar ett WebPartCollection objekt som består av alla WebPart kontroller som refereras till i WebPartManager.WebParts egenskapen, som innehåller alla WebPart kontroller på sidan. Metoden itererar genom alla kontroller och växlar varje kontrolls ChromeState egenskap, vilket avgör om kontrollen är normal eller minimerad.

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

Den andra delen av kodexemplet är webbsidan som innehåller kontrollerna. Observera att de kontroller som deklareras i WebPartZone1 är standardkontroller för ASP.NET server. men eftersom de omsluts som GenericWebPart kontroller vid körning, och klassen GenericWebPart ärver från klassen WebPart, behandlas kontrollerna automatiskt som WebPart kontroller vid körning och ingår därför i objektet WebPartCollection.

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

När du har läst in sidan i en webbläsare klickar du på knappen Växla ChromeState och märker att koden i den partiella klassen loopar igenom WebPartCollection objektet och omväxlande minimerar kontrollerna eller återgår till det normala. Om du upprepade gånger klickar på knappen Växla punktlista1 rubrik ändras rubriken för den översta kontrollen till alternativa värden.

Kommentarer

Konstruktorn WebPartCollection initierar en instans av WebPartCollection klassen genom att skicka in en samling WebPart kontroller.

Även om ett WebPartCollection objekt är skrivskyddat och det inte finns någon metod för att lägga till enskilda kontroller i det, kan du skapa en egen ICollection samling kontroller och skicka det till WebPartCollection konstruktorn. På så sätt kan du skapa anpassade samlingar och utföra massåtgärder på dem. Du kan också komma åt de underliggande kontrollerna i samlingen och ändra deras egenskapsvärden programmatiskt.

Se även

Gäller för