WebPartCollection 建構函式
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
初始化 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
。
範例
下列程式代碼範例示範如何在網頁元件頁面上使用 WebPartCollection 建構函式。 此範例有三個部分:
部分類別中頁面的程序代碼。
包含控件的網頁。
範例在瀏覽器中運作方式的描述。
程式代碼範例的第一個部分包含部分類別中頁面的程序代碼。 請注意,Button1_Click
方法會WebPartCollection建立 物件,其中包含 屬性中WebPartManager.WebParts參考的所有控件,其中包含頁面上的所有WebPartWebPart控件。 方法會逐一查看所有控件,並切換每個控件的 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>
在瀏覽器中載入頁面之後,按兩下 [切換 ChromeState ] 按鈕,並注意部分類別中的程式碼會迴圈查看 WebPartCollection 物件,並替代地將控件最小化,或將它們傳回正常狀態。 或者,如果您重複按兩下 [ 切換項目符號清單1標題 ] 按鈕,最上層控件的標題會變更為替代值。
備註
建WebPartCollection構函式會藉由傳入 控件的集合,初始化 類別的WebPart實例WebPartCollection。
WebPartCollection雖然 對像是只讀的,但沒有方法可將個別控件加入其中,但您可以建立自己的ICollection控件集合,並將它WebPartCollection傳遞給建構函式。 這可讓您建立自定義集合,並對其執行大量作業。 您也可以存取集合中的基礎控制件,並以程式設計方式變更其屬性值。