Diese Dokumentation wurde archiviert und wird nicht länger gepflegt.

WebPartZone-Klasse

Aktualisiert: November 2007

Wird als primäres Steuerelement im Webparts-Steuerelementsatz zum Hosten von WebPart-Steuerelementen auf einer Webseite verwendet.

Namespace:  System.Web.UI.WebControls.WebParts
Assembly:  System.Web (in System.Web.dll)

[AspNetHostingPermissionAttribute(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermissionAttribute(SecurityAction.InheritanceDemand, Level = AspNetHostingPermissionLevel.Minimal)]
public class WebPartZone : WebPartZoneBase
/** @attribute AspNetHostingPermissionAttribute(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal) */
/** @attribute AspNetHostingPermissionAttribute(SecurityAction.InheritanceDemand, Level = AspNetHostingPermissionLevel.Minimal) */
public class WebPartZone extends WebPartZoneBase
public class WebPartZone extends WebPartZoneBase
<asp:WebPartZone />

Eine Zone im Webparts-Feature ist ein definierter Bereich auf einer Webseite, der Webparts-Steuerelemente enthält. Eine Zone dient in erster Linie dazu, für die in ihr enthaltenen Steuerelemente ein Layout sowie eine gemeinsame Benutzeroberfläche (UI) bereitzustellen Weitere Informationen über Zonen und ihre Verwendung in Webparts-Anwendungen finden Sie in den Referenzinformationen für die WebZone-Klasse und die WebPartZoneBase-Klasse sowie unter dem Thema Übersicht über die Gruppe der Webparts-Steuerelemente.

Die spezielle Funktion des WebPartZone-Steuerelements besteht darin, WebPart-Steuerelemente zu enthalten, mit denen die Haupt-UI der Webparts-Anwendungen gebildet wird. Ein WebPartZone-Steuerelement kann in persistentem Format auf einer Webseite deklariert werden, sodass Entwickler es als Vorlage verwenden können, um andere Steuerelemente im <asp:webpartzone>-Element hinzuzufügen. Jeder Serversteuerelement-Typ, der zu einer WebPartZone-Zone hinzugefügt wurde, kann zur Laufzeit als WebPart-Steuerelement fungieren. Dies gilt unabhängig davon, ob es sich bei dem hinzugefügten Steuerelement um ein WebPart-Steuerelement, ein Benutzersteuerelement, ein benutzerdefiniertes Steuerelement oder ein ASP.NET-Steuerelement handelt. Weitere Informationen finden Sie unter dem entsprechenden Thema für die GenericWebPart-Klasse.

Das WebPartZone-Steuerelement enthält nicht nur WebPart-Steuerelemente, sondern stellt außerdem eine gemeinsame UI für die enthaltenen Steuerelemente bereit. Diese gemeinsame UI, die zusammenfassend auch als Chrome bezeichnet wird, enthält die peripheren UI-Elemente aller Steuerelemente, beispielsweise Rahmen, Titel, Header, Footer, Stileigenschaften und Verben (UI-Aktionen, die ein Benutzer für ein Steuerelement ausführen kann, zum Beispiel Schließen oder Minimieren).

46bfh5z6.alert_note(de-de,VS.90).gifHinweis:

Internet Explorer gibt die Höhe einer WebPartZone oder der darin enthaltenen Steuerelemente möglicherweise nicht wie erwartet wieder, abhängig von der Ausrichtung der Zone. Weitere Details finden Sie in der Dokumentation für die LayoutOrientation-Eigenschaft oder die Height-Eigenschaft.

Das Verhalten der WebPartZone-Klasse wird größtenteils von der WebZone-Basisklasse und der WebPartZoneBase-Basisklasse abgeleitet. Die Klasse fügt nur einen einzigen Member hinzu: die ZoneTemplate-Eigenschaft. Diese Eigenschaft verweist auf ein ITemplate-Objekt. Dieses Objekt ist eine Vorlage, mit der Seitenentwickler die Steuerelemente in einer Zone statisch definieren können, indem sie ein <zonetemplate>-Element im deklarativen Markup einer ASPX-Seite verwenden.

Eingabehilfen

Das für dieses Steuerelement standardmäßig wiedergegebene Markup entspricht eventuell nicht den Standards für die Eingabehilfen wie beispielsweise den Richtlinien der Web Content Accessibility Guidelines 1.0 (WCAG) mit der Priorität 1. Details über die Unterstützung von Eingabehilfen für dieses Steuerelement finden Sie unter Steuerelemente und Eingabehilfen von ASP.NET.

Das folgende Codebeispiel veranschaulicht die Verwendung des WebPartZone-Steuerelements in einer Webparts-Seite. Um das Codebeispiel auszuführen, müssen Sie diesen Quellcode kompilieren. Sie können den Code explizit kompilieren und die sich ergebende Assembly im Ordner Bin der Website oder im globalen Assemblycache ablegen. Alternativ können Sie den Quellcode im Ordner App_Code der Site ablegen, wo er zur Laufzeit dynamisch kompiliert wird. Eine exemplarische Vorgehensweise, in der beide Methoden der Kompilierung erläutert werden, finden Sie unter Exemplarische Vorgehensweise: Entwickeln und Verwenden eines benutzerdefinierten Serversteuerelements.

Im ersten Teil des Beispiels wird eine benutzerdefinierte Klasse veranschaulicht, die von der WebPartZone-Klasse erbt und zwei Basiseigenschaften für eine Zone im Konstruktor festlegt.

using System;
using System.Collections;
using System.ComponentModel;
using System.Security.Permissions;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;

namespace Samples.AspNet.CS.Controls
{
  [AspNetHostingPermission(SecurityAction.Demand, 
    Level=AspNetHostingPermissionLevel.Minimal)]
  [AspNetHostingPermission(SecurityAction.InheritanceDemand, 
    Level=AspNetHostingPermissionLevel.Minimal)]
  public class MyWebPartZone : WebPartZone
  {
    public MyWebPartZone()
    {
      base.VerbButtonType = ButtonType.Button;
      base.CloseVerb.Enabled = false;
    }
  }
}


Im zweiten Teil des Beispiels wird eine Seite veranschaulicht, die das benutzerdefinierte WebPartZone-Steuerelement enthält. Beachten Sie, dass für die Seite eine spezielle Register-Direktive im oberen Seitenbereich erforderlich ist, die auf die Assembly mit der benutzerdefinierten Zone verweist. Die Seite enthält außerdem ein <asp:webpartmanager>-Element, das auf jeder Webparts-Seite erforderlich ist. Das <cc1:MyWebPartZone>-Element, das das benutzerdefinierte WebPartZone-Steuerelement darstellt, enthält ein Calendar-Standardsteuerelement von ASP.NET. Da es in einer WebPartZone-Zone enthalten ist, wird das Calendar-Steuerelement zur Laufzeit mit einem GenericWebPart-Steuerelement eingeschlossen, sodass es sich wie ein WebPart-Steuerelement verhalten kann.

<%@ Page Language="C#" %>
<%@ Register TagPrefix="cc1" 
  Namespace="Samples.AspNet.CS.Controls" 
  Assembly="MyWebPartZoneCS" %>

<!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="WebPartManager1" runat="server" />
      <cc1:MyWebPartZone ID="MyWebPartZone1" runat="server">
        <VerbStyle Font-Italic="true" />
        <PartChromeStyle BackColor="lightblue" />
        <PartStyle BackColor="gray" />
        <PartTitleStyle Font-Bold="true" />
        <ZoneTemplate>
          <asp:Calendar ID="Calendar1" runat="server" 
            Title="My Calendar" />
        </ZoneTemplate>
      </cc1:MyWebPartZone>
    </div>
    </form>
</body>
</html>


Überprüfen Sie das deklarative Markup für das benutzerdefinierte WebPartZone-Steuerelement. Beachten Sie, dass Sie verschiedene Eigenschaften auf Zonenebene im Markup festlegen können, wie das nachstehende Codebeispiel veranschaulicht.

46bfh5z6.alert_note(de-de,VS.90).gifHinweis:

Achten Sie vor allem auf die Verwendung des <zonetemplate>-Elements. Wie im Abschnitt Hinweise gezeigt wird, ist dieses Element in einer WebPartZone-Zone erforderlich, um die statischen WebPart-Steuerelemente einzuschließen, die in einer Seite deklariert sind.

<cc1:MyWebPartZone ID="MyWebPartZone1" runat="server">
  <VerbStyle Font-Italic="true" />
  <PartChromeStyle BackColor="lightblue" />
  <PartStyle BackColor="gray" />
  <PartTitleStyle Font-Bold="true" />
  <ZoneTemplate>
    <asp:Calendar ID="Calendar1" runat="server" 
      Title="My Calendar" />
  </ZoneTemplate>
</cc1:MyWebPartZone>


Alle öffentlichen static (Shared in Visual Basic)-Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

.NET Framework und .NET Compact Framework unterstützen nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

.NET Framework

Unterstützt in: 3.5, 3.0, 2.0
Anzeigen: