Поделиться через


WebPartCollection Конструкторы

Определение

Инициализирует новый экземпляр класса WebPartCollection.

Перегрузки

WebPartCollection()

Инициализирует новый пустой экземпляр класса WebPartCollection.

WebPartCollection(ICollection)

Инициализирует новый экземпляр объекта WebPartCollection, передавая коллекцию ICollection элементов управления WebPart.

WebPartCollection()

Инициализирует новый пустой экземпляр класса WebPartCollection.

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

Комментарии

Конструктор WebPartCollection инициализирует пустой WebPartCollection экземпляр класса . Сам объект доступен только для чтения и не имеет метода для добавления в него отдельных WebPart элементов управления, поэтому у вас будет мало поводов для использования этого конструктора.

См. также раздел

Применяется к

WebPartCollection(ICollection)

Инициализирует новый экземпляр объекта WebPartCollection, передавая коллекцию ICollection элементов управления WebPart.

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)

Параметры

webParts
ICollection

ICollection, состоящая из элементов управления WebPart.

Исключения

webParts имеет значение null.

Объект в коллекции webParts имеет значение null.

-или-

Тип объекта в коллекции webParts отличен от типа WebPart.

Примеры

В следующем примере кода показано использование конструктора WebPartCollection на странице веб-частей. Этот пример состоит из трех частей:

  • Код страницы в разделяемом классе.

  • Веб-страница, содержащая элементы управления.

  • Описание работы примера в браузере.

Первая часть примера кода содержит код страницы в разделяемом классе. Обратите внимание, что Button1_Click метод создает WebPartCollection объект , состоящий из всех WebPart элементов управления, на которые ссылается WebPartManager.WebParts свойство , которое включает все WebPart элементы управления на странице. Метод выполняет итерацию по всем элементам управления и переключает свойство каждого элемента управления ChromeState , которое определяет, является ли этот элемент управления нормальным или сведенным.

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

Вторая часть примера кода — веб-страница, содержащая элементы управления. Обратите внимание, что элементы управления, объявленные в WebPartZone1 , являются стандартными ASP.NET серверными элементами управления, но поскольку они упаковываются в виде GenericWebPart элементов управления во время выполнения, а GenericWebPart класс наследуется от WebPart класса , элементы управления автоматически обрабатываются как WebPart элементы управления во время выполнения и, следовательно, включаются в 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>

Загрузив страницу в браузере, нажмите кнопку Toggle ChromeState и обратите внимание, что код в разделяемом классе циклически просматривает WebPartCollection объект и поочеререгает элементы управления или возвращает их в нормальное состояние. Или, если вы несколько раз нажимаете кнопку Toggle BulletedList1 Title (Заголовок маркированного списка ), заголовок самого верхнего элемента управления изменится на альтернативные значения.

Комментарии

Конструктор WebPartCollection инициализирует экземпляр WebPartCollection класса , передавая коллекцию WebPart элементов управления.

WebPartCollection Хотя объект доступен только для чтения и не существует метода для добавления в него отдельных элементов управления, можно создать собственную ICollection коллекцию элементов управления и передать ее конструкторуWebPartCollection. Это позволяет создавать пользовательские коллекции и выполнять с ними массовые операции. Вы также можете получить доступ к базовым элементам управления в коллекции и изменить их значения свойств программным способом.

См. также раздел

Применяется к