WebPartCollection Constructores
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Inicializa una nueva instancia de la clase WebPartCollection.
Sobrecargas
WebPartCollection() |
Inicializa una nueva instancia vacía de la clase WebPartCollection. |
WebPartCollection(ICollection) |
Inicializa una nueva instancia de un objeto WebPartCollection pasando como parámetro una colección ICollection de controles WebPart. |
WebPartCollection()
Inicializa una nueva instancia vacía de la clase WebPartCollection.
public:
WebPartCollection();
public WebPartCollection ();
Public Sub New ()
Comentarios
El WebPartCollection constructor inicializa una instancia vacía de la WebPartCollection clase . El propio objeto es de solo lectura y no tiene ningún método para agregar controles individuales WebPart a él; por lo tanto, tendrá poca ocasión de usar este constructor.
Consulte también
Se aplica a
WebPartCollection(ICollection)
Inicializa una nueva instancia de un objeto WebPartCollection pasando como parámetro una colección ICollection de controles 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)
Parámetros
- webParts
- ICollection
Colección ICollection de controles WebPart.
Excepciones
webParts
es null
.
Un objeto de la colección webParts
es null
.
o bien
Un objeto de la colección webParts
no es del tipo WebPart.
Ejemplos
En el ejemplo de código siguiente se muestra el uso del WebPartCollection constructor en una página de elementos web. Este ejemplo tiene tres partes:
Código de la página en una clase parcial.
Página web que contiene los controles.
Descripción de cómo funciona el ejemplo en un explorador.
La primera parte del ejemplo de código contiene el código de la página en una clase parcial. Tenga en cuenta que el Button1_Click
método crea un WebPartCollection objeto que consta de todos los WebPart controles a los que se hace referencia en la WebPartManager.WebParts propiedad , que incluye todos los WebPart controles de la página. El método recorre en iteración todos los controles y alterna la propiedad de ChromeState cada control, que determina si ese control es normal o minimizado.
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 segunda parte del ejemplo de código es la página web que contiene los controles. Tenga en cuenta que los controles declarados en WebPartZone1
son controles de servidor estándar ASP.NET, pero porque se encapsulan como GenericWebPart controles en tiempo de ejecución y la GenericWebPart clase hereda de la WebPart clase , los controles se tratan automáticamente como WebPart controles en tiempo de ejecución y, por lo tanto, se incluyen en el WebPartCollection objeto .
<%@ 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>
Después de cargar la página en un explorador, haga clic en el botón Alternar ChromeState y observe que el código de la clase parcial recorre el WebPartCollection objeto y, alternativamente, minimiza los controles o los devuelve a la normalidad. O bien, si hace clic repetidamente en el botón Toggle BulletedList1 Title ,el título del control superior se cambia a valores alternativos.
Comentarios
El WebPartCollection constructor inicializa una instancia de la WebPartCollection clase pasando una colección de WebPart controles.
Aunque un WebPartCollection objeto es de solo lectura y no hay ningún método para agregar controles individuales a él, puede crear su propia ICollection colección de controles y pasarlo al WebPartCollection constructor. Esto le permite crear colecciones personalizadas y realizar operaciones masivas en ellas. También puede acceder a los controles subyacentes de la colección y cambiar sus valores de propiedad mediante programación.