WebPartCollection Costruttori
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Inizializza una nuova istanza della classe WebPartCollection.
Overload
WebPartCollection() |
Inizializza una nuova istanza vuota della classe WebPartCollection. |
WebPartCollection(ICollection) |
Inizializza una nuova istanza di un oggetto WebPartCollection passando in un insieme ICollection di controlli WebPart. |
WebPartCollection()
Inizializza una nuova istanza vuota della classe WebPartCollection.
public:
WebPartCollection();
public WebPartCollection ();
Public Sub New ()
Commenti
Il WebPartCollection costruttore inizializza un'istanza vuota della WebPartCollection classe . L'oggetto stesso è di sola lettura e non dispone di alcun metodo per aggiungere singoli WebPart controlli. Pertanto, si avrà poco tempo per usare questo costruttore.
Vedi anche
Si applica a
WebPartCollection(ICollection)
Inizializza una nuova istanza di un oggetto WebPartCollection passando in un insieme ICollection di controlli 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)
Parametri
- webParts
- ICollection
Insieme ICollection di controlli WebPart.
Eccezioni
webParts
è null
.
Il valore di un oggetto nell'insieme webParts
è null
.
-oppure-
Un oggetto nell'insieme webParts
non è di tipo WebPart.
Esempio
Nell'esempio di codice seguente viene illustrato l'uso del WebPartCollection costruttore in una pagina web part. Questo esempio include tre parti:
Codice per la pagina in una classe parziale.
Pagina Web che contiene i controlli.
Descrizione del funzionamento dell'esempio in un browser.
La prima parte dell'esempio di codice contiene il codice per la pagina in una classe parziale. Si noti che il Button1_Click
metodo crea un WebPartCollection oggetto costituito da tutti i WebPart controlli a cui si fa riferimento nella WebPartManager.WebParts proprietà , che include tutti i WebPart controlli nella pagina. Il metodo esegue l'iterazione di tutti i controlli e attiva o disattiva la proprietà di ChromeState ogni controllo, che determina se tale controllo è normale o ridotto a icona.
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
La seconda parte dell'esempio di codice è la pagina Web che contiene i controlli. Si noti che i controlli dichiarati in WebPartZone1
sono controlli server ASP.NET standard, ma poiché vengono sottoposti a wrapping come GenericWebPart controlli in fase di esecuzione e la GenericWebPart classe eredita dalla WebPart classe , i controlli vengono considerati automaticamente come WebPart controlli in fase di esecuzione e pertanto vengono inclusi nell'oggetto 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>
Dopo aver caricato la pagina in un browser, fare clic sul pulsante Toggle ChromeState e notare che il codice nella classe parziale scorre l'oggetto WebPartCollection e riduce al minimo i controlli o li restituisce normalmente. In alternativa, se si fa ripetutamente clic sul pulsante Toggle BulletedList1 Title (Titolo bulletedList1 ), il titolo del controllo superiore viene modificato in valori alternativi.
Commenti
Il WebPartCollection costruttore inizializza un'istanza della WebPartCollection classe passando una raccolta di WebPart controlli.
Anche se un WebPartCollection oggetto è di sola lettura e non esiste alcun metodo per l'aggiunta di singoli controlli, è possibile creare una raccolta di controlli personalizzata ICollection e passarla al WebPartCollection costruttore. In questo modo è possibile creare raccolte personalizzate ed eseguire operazioni bulk su di esse. È anche possibile accedere ai controlli sottostanti nella raccolta e modificare i relativi valori di proprietà a livello di codice.