Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

EditorPartChrome-Klasse

 

Veröffentlicht: Oktober 2016

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

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

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

public class EditorPartChrome

NameBeschreibung
System_CAPS_pubmethodEditorPartChrome(EditorZoneBase)

Initialisiert eine neue Instanz der EditorPartChrome-Klasse.

NameBeschreibung
System_CAPS_protpropertyZone

Ruft einen Verweis auf die zugeordnete EditorZoneBase Zone.

NameBeschreibung
System_CAPS_protmethodCreateEditorPartChromeStyle(EditorPart, PartChromeType)

Erstellt das Style-Objekt, das Stilattribute, für die einzelnen bereitstellt EditorPart Steuerelement gerendert wird, indem die EditorPartChrome Objekt.

System_CAPS_pubmethodEquals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.(Geerbt von „Object“.)

System_CAPS_protmethodFinalize()

Gibt einem Objekt Gelegenheit, Ressourcen freizugeben und andere Bereinigungen durchzuführen, bevor es von der Garbage Collection freigegeben wird. (Geerbt von „Object“.)

System_CAPS_pubmethodGetHashCode()

Fungiert als die Standardhashfunktion.(Geerbt von „Object“.)

System_CAPS_pubmethodGetType()

Ruft den Type der aktuellen Instanz ab.(Geerbt von „Object“.)

System_CAPS_protmethodMemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.(Geerbt von „Object“.)

System_CAPS_pubmethodPerformPreRender()

Führt Aufgaben aus, die vor dem Rendern erfolgen müssen EditorPart Steuerelemente.

System_CAPS_pubmethodRenderEditorPart(HtmlTextWriter, EditorPart)

Rendert ein vollständiges EditorPart -Steuerelement mit allen zugehörigen Bereichen.

System_CAPS_protmethodRenderPartContents(HtmlTextWriter, EditorPart)

Rendert den Hauptinhaltsbereich von einer EditorPart -Steuerelements und schließt die Kopf- und Fußzeile.

System_CAPS_pubmethodToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.(Geerbt von „Object“.)

Chrom bezieht sich auf die peripheren Elemente der Benutzeroberfläche (UI), jedes Webparts-Steuerelement oder ein Serversteuerelement in einer Zone enthalten. Das Chrom für ein Steuerelement umfasst den Rahmen, die Titelleiste und Symbole, Titeltext und Verbmenü, der in der Titelleiste angezeigt. Die Darstellung der Chrom auf der Ebene der Zone festgelegt ist, und gilt für alle Steuerelemente in der Zone.

Die Webparts-Steuerelementen werden mithilfe der EditorPartChrome Klasse Chrom Rendern EditorPart Steuerelemente. Darüber hinaus ermöglicht diese Klasse Entwicklern die Anpassung der EditorPart von Steuerelementen in einem EditorZoneBase Zone. Sie können z. B. überschreiben die CreateEditorPartChromeStyle Methode, um einige spezifische Stilattribute anzupassen gemäß der EditorZoneBase Zone.

Die EditorPartChrome -Klasse enthält mehrere wichtige Methoden, die hilfreich sind, wenn Sie das Rendering außer Kraft setzen möchten EditorPart Steuerelemente. Ist der EditorPartChrome -Konstruktor, der Sie verwenden, wenn Sie außer Kraft setzen die CreateEditorPartChrome -Methode in einem benutzerdefinierten EditorZoneBase Klasse zum Erstellen einer Instanz des benutzerdefinierten EditorPartChrome Objekt. Eine weitere nützliche Methode ist die RenderPartContents -Methode, die Sie verwenden können, um das Rendering des Inhaltsbereichs von Steuerelementen in einer Zone (im Gegensatz zu Chrome-Elemente, z. B. Kopfzeilen, Fußzeilen und Titelleisten) zu steuern. Abschließend Wunsch umfassende programmgesteuerte Kontrolle über alle Aspekte des Renderings der EditorPart -Steuerelemente, die Sie überschreiben die RenderEditorPart Methode.

Hinweise für Implementierer:

Beim Erben von der EditorPartChrome -Klasse, müssen Sie erstellen eine benutzerdefinierte EditorZone Zone zurückzugebenden angepassten EditorPartChrome Klasse. Im Beispielabschnitt der Übersicht dieser Klasse veranschaulicht, wie eine benutzerdefinierte EditorZone Zone, um eine benutzerdefinierte zurückgeben EditorPartChrome Klasse

Im folgenden Codebeispiel wird veranschaulicht, wie Sie die EditorPartChrome Klasse, um das standardmäßige Rendering außer Kraft setzen EditorPart von Steuerelementen in einem EditorZoneBase Zone.

Das Codebeispiel besteht aus drei Teilen:

  • Ein Benutzersteuerelement mit dem Sie die Anzeigemodi auf einer Webparts-Seite wechseln kann.

  • Eine Webseite, die alle Steuerelemente im Beispiel hostet.

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

Der erste Teil des Codebeispiels ist das Benutzersteuerelement. Der Quellcode für das Benutzersteuerelement stammt aus einem anderen Thema. Für dieses Codebeispiel funktioniert, müssen Sie die ASCX-Datei für das Benutzersteuerelement aus den Walkthrough: Changing Display Modes on a Web Parts Page Thema, und speichern Sie die Datei im gleichen Ordner wie die ASPX-Seite in diesem Codebeispiel.

Der zweite Teil des Beispiels ist die Webseite. Beachten Sie, dass es eine Register -Direktive am Anfang der Datei, die die kompilierte Komponente und ein Tagpräfix registriert. Beachten Sie, dass die Seite die benutzerdefinierten Editor-Zone mit dem Element verweist auf <aspSample:MyEditorZone>.

<%@ 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 der benutzerdefinierten Editor Chrom und EditorZone-Teil. MyEditorZone Erweitert EditorZone und überschreibt CreateEditorPartChrome Teil auf den benutzerdefinierten Editor zurück in chrome. MyEditorPartChrome Ändert die Hintergrundfarbe des Steuerelements in Editor die CreateEditorPartChromeStyle Methode. Die Hintergrundfarbe der Zone wird geändert, der PerformPreRender -Methode und Text-Editor-Webpart in hinzugefügt wird die RenderPartContents Methode.

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
Verfügbar seit 2.0

Alle öffentlichen statischen Member ( Shared in Visual Basic) dieses Typs sind threadsicher. Die Threadsicherheit für Instanzmember ist nicht garantiert.

Zurück zum Anfang
Anzeigen: