(0) exportieren Drucken
Alle erweitern
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original

EditorPartChrome-Klasse

Ermöglicht Entwicklern, das Rendering ausschließlich für die ausgewählten Abschnitte von EditorPart-Steuerelementen in einer EditorZoneBase-Zone zu überschreiben.

System.Object
  System.Web.UI.WebControls.WebParts.EditorPartChrome

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

public class EditorPartChrome

Der EditorPartChrome-Typ macht die folgenden Member verfügbar.

  NameBeschreibung
Öffentliche MethodeEditorPartChromeInitialisiert eine neue Instanz der EditorPartChrome-Klasse.
Zum Seitenanfang

  NameBeschreibung
Geschützte EigenschaftZoneRuft einen Verweis auf die zugeordnete EditorZoneBase-Zone ab.
Zum Seitenanfang

  NameBeschreibung
Geschützte MethodeCreateEditorPartChromeStyleErstellt das Stilobjekt, das die Stilattribute für jedes EditorPart-Steuerelement bereitstellt, das vom EditorPartChrome-Objekt gerendert wird.
Öffentliche MethodeEquals(Object)Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist. (Von Object geerbt.)
Geschützte MethodeFinalize Gibt einem Objekt Gelegenheit, Ressourcen freizugeben und andere Bereinigungen durchzuführen, bevor es von der Garbage Collection freigegeben wird. (Von Object geerbt.)
Öffentliche MethodeGetHashCodeFungiert als die Standardhashfunktion. (Von Object geerbt.)
Öffentliche MethodeGetTypeRuft den Type der aktuellen Instanz ab. (Von Object geerbt.)
Geschützte MethodeMemberwiseCloneErstellt eine flache Kopie des aktuellen Object. (Von Object geerbt.)
Öffentliche MethodePerformPreRenderFührt Aufgaben aus, die vor dem Rendern von EditorPart-Steuerelementen verarbeitet werden müssen.
Öffentliche MethodeRenderEditorPartGibt ein vollständiges EditorPart-Steuerelement mit allen zugehörigen Bereichen wieder.
Geschützte MethodeRenderPartContentsGibt den Hauptinhaltsbereich eines EditorPart-Steuerelements wieder und schließt Header und Footer vom Rendering aus.
Öffentliche MethodeToStringGibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Von Object geerbt.)
Zum Seitenanfang

Das Chrom verweist auf die peripheren Elemente der Benutzeroberfläche, die alle in einer Zone enthaltenen Webparts-Steuerelemente oder Serversteuerelemente umgeben. Das Chrom eines Steuerelements umfasst dessen Rahmen und Titelleiste. Dazu gehören außerdem die Symbole, der Titeltext und das Verbenmenü in der Titelleiste. Die Darstellung eines Chroms wird auf der Zonenebene festgelegt und auf alle Steuerelemente in der Zone angewendet.

Der Webparts-Steuerelementsatz verwendet die EditorPartChrome-Klasse, um das Chrom für EditorPart-Steuerelemente zu zu rendern. Darüber hinaus ermöglicht diese Klasse Entwicklern die Anpassung von beliebigen EditorPart-Steuerelementen in einer EditorZoneBase-Zone. Beispielsweise können Sie die CreateEditorPartChromeStyle-Methode überschreiben, um einige spezifische Stilattribute anzupassen, die in der EditorZoneBase-Zone definiert sind.

Die EditorPartChrome-Klasse enthält mehrere wichtige Methoden, die hilfreich beim Überschreiben des Renderings von EditorPart-Steuerelementen sind. Zu diesen zählt der EditorPartChrome-Konstruktor, mit dem Sie die CreateEditorPartChrome-Methode in einer benutzerdefinierten EditorZoneBase-Klasse überschreiben können, um eine Instanz des benutzerdefinierten EditorPartChrome-Objekts zu erstellen. Die RenderPartContents-Methode ist ebenfalls nützlich. Mit dieser Methode können Sie das Rendering des Inhaltsbereichs von Steuerelementen in einer Zone steuern (jedoch nicht das Rendering von Chromelementen wie Header, Footer und Titelleisten). Wenn alle Aspekte des Renderings der EditorPart-Steuerelemente vollständig programmgesteuert sein sollen, können Sie die RenderEditorPart-Methode überschreiben.

Hinweise zur Implementierung

Wenn Sie von der EditorPartChrome-Klasse erben, müssen Sie eine benutzerdefinierte EditorZone-Zone erstellen, um die benutzerdefinierte EditorPartChrome-Klasse zurückzugeben. Im Beispielabschnitt der Übersicht dieser Klasse wird veranschaulicht, wie eine benutzerdefinierte EditorZone-Zone erstellt wird, um eine benutzerdefinierte EditorPartChrome-Klasse zurückzugeben.

Im folgenden Codebeispiel wird veranschaulicht, wie mit der EditorPartChrome-Klasse das Standardrendering von EditorPart-Steuerelementen in einer EditorZoneBase-Zone überschrieben wird.

Das Codebeispiel besteht aus drei Teilen:

  • Ein Benutzersteuerelement, mit dessen Hilfe Sie die Anzeigemodi auf einer Webparts-Seite wechseln können.

  • Eine Webseite, die alle Steuerelemente im Beispiel hostet.

  • Eine Klasse, die den Quellcode für eine benutzerdefinierte EditorPartChrome-Klasse und eine benutzerdefinierte EditorZoneBase-Zone enthält.

Der erste Teil des Codebeispiels ist das Benutzersteuerelement. Der Quellcode für das Benutzersteuerelement stammt aus einem anderen Thema. Damit dieses Codebeispiel ausgeführt werden kann, müssen Sie die ASCX-Datei für das Benutzersteuerelement aus dem Thema Walkthrough: Changing Display Modes on a Web Parts Page abrufen und in dem Ordner ablegen, in dem sich die ASPX-Seite aus diesem Codebeispiel befindet.

Der zweite Teil des Beispiels ist die Webseite. Beachten Sie, dass eine Register-Direktive im oberen Bereich der Datei enthalten ist, mit der die kompilierte Komponente und ein Tagpräfix registriert wird. Beachten Sie zudem, dass die Seite über das Element <aspSample:MyEditorZone> auf die benutzerdefinierte Editorzone verweist.


<%@ Page Language="C#" %>
<%@ register tagprefix="aspSample" 
  Namespace="Samples.AspNet.CS.Controls" %>
<%@ Register TagPrefix="uc1" TagName="DisplayModeMenuCS" Src="~/DisplayModeMenuCS.ascx" %>
<!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>Web Parts Page</title>
</head>
<body>
  <h1>Web Parts Demonstration Page</h1>
  <form runat="server" id="form1">
<asp:webpartmanager id="WebPartManager1" runat="server" />
<uc1:DisplayModeMenuCS runat="server" ID="DisplayModeMenu" />
  <br />
  <table cellspacing="0" cellpadding="0" border="0">
    <tr>
      <td valign="top">
    <asp:webpartzone id="SideBarZone" runat="server" 
        headertext="Sidebar">
        <zonetemplate>
        </zonetemplate>
      </asp:webpartzone>
      <aspSample:MyEditorZone ID="EditorZone1" runat="server">
      <ZoneTemplate>
        <asp:AppearanceEditorPart ID="AppearanceEditorPart1" 
          runat="server" />
        <asp:LayoutEditorPart ID="LayoutEditorPart1" 
          runat="server" />
      </ZoneTemplate>
    </aspSample:MyEditorZone>
      </td>
      <td valign="top">
    <asp:webpartzone id="MainZone" runat="server" headertext="Main">
         <zonetemplate>
        <asp:label id="contentPart" runat="server" title="Content">
              <h2>Welcome to My Home Page</h2>
              <p>Use links to visit my favorite sites!</p>
            </asp:label>
         </zonetemplate>
       </asp:webpartzone>
      </td>
      <td valign="top">
      </td>
    </tr>
  </table>
  </form>
</body>
</html>


Der dritte Teil des Beispiels enthält die Implementierung des benutzerdefinierten EditorPart-Chroms und der EditorPart-Zone. MyEditorZone erweitert EditorZone und überschreibt CreateEditorPartChrome, um das benutzerdefinierte EditorPart-Chrom zurückzugeben. MyEditorPartChrome ändert die Hintergrundfarbe des Editor-Teilsteuerelements in der CreateEditorPartChromeStyle-Methode. Die Hintergrundfarbe der Zone wird in der PerformPreRender-Methode geändert, und dem EditorPart in der RenderPartContents-Methode wird Text hinzugefügt.


namespace Samples.AspNet.CS.Controls
{

    [AspNetHostingPermission(SecurityAction.Demand,
      Level = AspNetHostingPermissionLevel.Minimal)]
    [AspNetHostingPermission(SecurityAction.InheritanceDemand,
      Level = AspNetHostingPermissionLevel.Minimal)]
    public class MyEditorPartChrome : EditorPartChrome
    {
        public MyEditorPartChrome(EditorZoneBase zone)
            : base(zone)
        {

        }

        protected override Style CreateEditorPartChromeStyle(EditorPart editorPart, PartChromeType chromeType)
        {
            Style editorStyle = base.CreateEditorPartChromeStyle(editorPart, chromeType);
            editorStyle.BackColor = Color.Bisque;
            return editorStyle;
        }

        public override void PerformPreRender()
        {
            Style zoneStyle = new Style();
            zoneStyle.BackColor = Color.Cornsilk;

            Zone.Page.Header.StyleSheet.RegisterStyle(zoneStyle, null);
            Zone.MergeStyle(zoneStyle);
        }

        protected override void RenderPartContents(HtmlTextWriter writer, EditorPart editorPart)
        {
            writer.AddStyleAttribute("color", "red");
            writer.RenderBeginTag("p");
            writer.Write("Apply all changes");
            writer.RenderEndTag();
            editorPart.RenderControl(writer);
        }

        public override void RenderEditorPart(HtmlTextWriter writer, EditorPart editorPart)
        {
            base.RenderEditorPart(writer, editorPart);
        }
    }

    [AspNetHostingPermission(SecurityAction.Demand,
      Level = AspNetHostingPermissionLevel.Minimal)]
    [AspNetHostingPermission(SecurityAction.InheritanceDemand,
      Level = AspNetHostingPermissionLevel.Minimal)]
    public class MyEditorZone : EditorZone
    {
        protected override EditorPartChrome CreateEditorPartChrome()
        {
            return new MyEditorPartChrome(this);
        }
    }
}


.NET Framework

Unterstützt in: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)

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

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

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2014 Microsoft