Share via


WebPartCollection Sınıf

Tanım

İlgili denetim gruplarını izlemek ve yönetmek için kullanılan bir denetim koleksiyonu WebPart içerir. Bu sınıf devralınamaz.

public ref class WebPartCollection sealed : System::Collections::ReadOnlyCollectionBase
public sealed class WebPartCollection : System.Collections.ReadOnlyCollectionBase
type WebPartCollection = class
    inherit ReadOnlyCollectionBase
Public NotInheritable Class WebPartCollection
Inherits ReadOnlyCollectionBase
Devralma
WebPartCollection

Örnekler

Aşağıdaki kod örneği, bir Web Bölümleri sayfasında nesnenin WebPartCollection kullanımını gösterir. Bu örnekte üç bölüm vardır:

  • Kısmi sınıftaki sayfanın kodu.

  • Denetimleri içeren Web sayfası.

  • Örneğin tarayıcıda nasıl çalıştığını gösteren açıklama.

Kod örneğinin ilk bölümü, kısmi bir sınıftaki sayfanın kodunu içerir. yöntemininButton1_Click, sayfadaki tüm denetimleri içeren özelliğinde WebPartManager.WebParts başvurulan tüm WebPartWebPart denetimlerden oluşan bir WebPartCollection nesnesi oluşturduğuna dikkat edin. yöntemi tüm denetimler arasında yinelenir ve her denetimin özelliğini değiştirir ve bu da denetimin ChromeState normal mi yoksa simge durumuna küçültülmüş mü olduğunu belirler.

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

Kod örneğinin ikinci bölümü, denetimleri içeren Web sayfasıdır. içinde WebPartZone1 bildirilen denetimlerin standart ASP.NET sunucu denetimleri olduğuna dikkat edin, ancak çalışma zamanında denetimler olarak GenericWebPart sarmalandığından GenericWebPart ve sınıf sınıftan WebPart devraldığından, denetimler otomatik olarak çalışma zamanında denetim olarak WebPart değerlendirilir ve bu nedenle nesneye WebPartCollection eklenir.

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

Sayfayı bir tarayıcıda yükleyip ChromeState'i Aç/Kapat düğmesine tıkladıktan sonra, kısmi sınıftaki kod nesnede WebPartCollection döngü yapar ve alternatif olarak denetimleri simge durumuna küçültür veya normale döndürür. Alternatif olarak, Madde İşaretli Liste1 Başlığı Değiştir düğmesine art arda tıklarsanız, en üstteki denetimin başlığı alternatif değerlere dönüştürülür.

Açıklamalar

WebPartCollection sınıfı, denetim kümelerini yönetmek için ve WebPartManager denetimleri tarafından WebPartZoneBase genellikle kullanılan salt okunur bir denetim koleksiyonudurWebPart.

DenetimWebPartManager, sayfadaki tüm WebPart denetimlerin listesini tutmak için bir nesne, denetim ise WebPartZoneBase içerdiği denetimleri izlemek WebPart için bir WebPartCollection nesne kullanır.WebPartCollection

Not

KoleksiyonWebPartCollection, bölgelere yerleştirilen WebPartZoneBase ve Web Bölümleri uygulamalarının bir parçası olarak kullanılan hem denetimleri hem de WebPart diğer sunucu denetimlerini (kullanıcı denetimleri, özel denetimler ve ASP.NET denetimleri gibi) içerir. Bu nedenle, örneğin, bir sayfada bir WebPartZone bölgeniz varsa ve bunun içinde özel WebPart bir denetim ve ASP.NET Calendar denetimi bildirirseniz, her iki denetim de özelliği tarafından WebParts başvuruda bulunulmuş koleksiyonda WebPartCollection olur.

WebPartCollection Web Bölümleri denetim kümesinin kesin türe sahip koleksiyonlarla çalışabilmesi için nesnesi vardır. Benzer şekilde, bir dizi WebPart denetim üzerinde toplu işlemler gerçekleştirmek istiyorsanız, özelliğini kullanarak WebParts bir WebPartCollection nesneye başvuru alabilirsiniz. Örneğin, sayfadaki tüm WebPart denetimler arasında döngü yapmak ve bunların görünümünü bir şekilde değiştirmek isteyebilirsiniz. Nesne salt okunur olsa WebPartCollection da, koleksiyonda başvuruda bulunılan temel denetimlerin özelliklerinde programlı değişiklikler yapabilirsiniz.

Oluşturucular

WebPartCollection()

sınıfının boş bir yeni örneğini WebPartCollection başlatır.

WebPartCollection(ICollection)

Bir denetim koleksiyonu geçirerek bir nesnenin WebPartCollection yeni bir ICollection örneğini WebPart başlatır.

Özellikler

Count

Örnekte bulunan ReadOnlyCollectionBase öğelerin sayısını alır.

(Devralındığı yer: ReadOnlyCollectionBase)
InnerList

Örnekte bulunan ReadOnlyCollectionBase öğelerin listesini alır.

(Devralındığı yer: ReadOnlyCollectionBase)
Item[Int32]

Koleksiyondaki konumuna göre koleksiyonun bir üyesini döndürür.

Item[String]

Benzersiz bir dize tanımlayıcısını temel alarak koleksiyonun bir üyesini döndürür.

Yöntemler

Contains(WebPart)

Koleksiyonda belirli bir denetimin bulunup bulunmadığına ilişkin bir değer döndürür.

CopyTo(WebPart[], Int32)

Koleksiyonu bir nesne dizisine WebPart kopyalar.

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetEnumerator()

Örnekte yineleyen ReadOnlyCollectionBase bir numaralandırıcı döndürür.

(Devralındığı yer: ReadOnlyCollectionBase)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
IndexOf(WebPart)

Koleksiyonun belirli bir üyesinin konumunu döndürür.

MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Belirtik Arabirim Kullanımları

ICollection.CopyTo(Array, Int32)

Hedef dizinin belirtilen dizininden başlayarak tamamını ReadOnlyCollectionBase uyumlu bir tek boyutlu Arrayöğesine kopyalar.

(Devralındığı yer: ReadOnlyCollectionBase)
ICollection.IsSynchronized

Bir nesneye erişimin eşitlenip eşitlenmediğini belirten bir ReadOnlyCollectionBase değer alır (iş parçacığı güvenli).

(Devralındığı yer: ReadOnlyCollectionBase)
ICollection.SyncRoot

Bir nesneye erişimi eşitlemek için kullanılabilecek bir ReadOnlyCollectionBase nesne alır.

(Devralındığı yer: ReadOnlyCollectionBase)

Uzantı Metotları

Cast<TResult>(IEnumerable)

öğesinin IEnumerable öğelerini belirtilen türe atar.

OfType<TResult>(IEnumerable)

Öğesinin IEnumerable öğelerini belirtilen türe göre filtreler.

AsParallel(IEnumerable)

Sorgunun paralelleştirilmesini etkinleştirir.

AsQueryable(IEnumerable)

bir IEnumerable öğesini öğesine IQueryabledönüştürür.

Şunlara uygulanır

Ayrıca bkz.