WebPartExportMode Enumeration

Definition

Gibt an, ob alle, einige oder keine Eigenschaften eines WebPart-Steuerelements exportiert werden können.

public enum class WebPartExportMode
public enum WebPartExportMode
type WebPartExportMode = 
Public Enum WebPartExportMode
Vererbung
WebPartExportMode

Felder

All 1

Alle Eigenschaften eines Webparts-Steuerelements können exportiert werden.

None 0

Keine der Eigenschaften eines Webparts-Steuerelements kann exportiert werden.

NonSensitiveData 2

Nur die Eigenschaften eines Webparts-Steuerelements können exportiert werden, die als nicht vertraulich definiert sind.

Beispiele

Im folgenden Beispiel wird die Verwendung der WebPart.ExportMode -Eigenschaft veranschaulicht. Beachten Sie, dass Sie auch Ihre Web.config-Datei aktualisieren müssen, damit das Exportcodebeispiel funktioniert, wie im Abschnitt Hinweise beschrieben.

Der erste Teil dieses Beispiels enthält den Code für ein Steuerelement mit dem Namen TextDisplayWebPart. Dieses Steuerelement ist mit dem benutzerdefinierten Steuerelement identisch, das sich im Abschnitt Beispiele der -Klasse befindet, mit dem WebPart Ausnahme, dass es der TextDisplayWebPart.ContentText -Eigenschaft ein hinzufügtPersonalizableAttribute, damit die Eigenschaft exportiert werden kann. Beachten Sie, dass die Attributdeklaration den Wert von true für den isSensitive Parameter enthält, was bedeutet, dass die Eigenschaft für Exportzwecke als vertrauliche Daten gekennzeichnet ist. Damit das Codebeispiel ausgeführt werden kann, müssen Sie diesen Quellcode kompilieren. Sie können sie explizit kompilieren und die resultierende Assembly im Ordner Bin ihrer Website oder im globalen Assemblycache ablegen. Alternativ können Sie den Quellcode im App_Code Ordner Ihrer Website ablegen, wo er zur Laufzeit dynamisch kompiliert wird. In diesem Codebeispiel wird davon ausgegangen, dass Sie den Quellcode in eine Assembly kompilieren, ihn in einem Bin-Unterordner Ihrer Webanwendung platzieren und auf die Assembly mit einer Register Direktive auf Ihrer Webseite verweisen. Eine exemplarische Vorgehensweise, die beide Methoden der Kompilierung veranschaulicht, finden Sie unter Exemplarische Vorgehensweise: Entwickeln und Verwenden eines benutzerdefinierten Webserversteuerelements.

using System;
using System.Security.Permissions;
using System.Web;
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 TextDisplayWebPart : WebPart
  {
    private String _contentText = null;
    TextBox input;
    Label DisplayContent;
    const string _subTitle = "Contoso, Ltd";

    public TextDisplayWebPart()
    {
      this.AllowClose = false;
    }

    [
      Personalizable(PersonalizationScope.User, true),
      WebBrowsable()
    ]
    public String ContentText
    {
      get { return _contentText; }
      set { _contentText = value; }
    }

    protected override void CreateChildControls()
    {
      Controls.Clear();
      DisplayContent = new Label();
      DisplayContent.BackColor = 
        System.Drawing.Color.LightBlue;
      DisplayContent.Text = this.ContentText;
      this.Controls.Add(DisplayContent);
      input = new TextBox();
      this.Controls.Add(input);
      Button update = new Button();
      update.Text = "Set Label Content";
      update.Click += new EventHandler(this.submit_Click);
      this.Controls.Add(update);
      ChildControlsCreated = true;
    }

    private void submit_Click(object sender, EventArgs e)
    {
      // Update the label string.
      if (!string.IsNullOrEmpty(input.Text))
      {
        _contentText = input.Text + @"<br />";
        input.Text = String.Empty;
        DisplayContent.Text = this.ContentText;
      }
    }
  }
}
Imports System.Security.Permissions 
Imports System.Web
Imports System.Web.UI.WebControls 
Imports System.Web.UI.WebControls.WebParts

Namespace Samples.AspNet.VB.Controls

<AspNetHostingPermission(SecurityAction.Demand, _ 
  Level := AspNetHostingPermissionLevel.Minimal)> _ 
<AspNetHostingPermission(SecurityAction.InheritanceDemand, _
  Level := AspNetHostingPermissionLevel.Minimal)> _ 
Public Class TextDisplayWebPart 
  Inherits WebPart
  Private _contentText As String = Nothing
  Private input As TextBox
  Private DisplayContent As Label 
  Private Const _subTitle as String = "Contoso, Ltd"
  
  
  Public Sub New()  
    Me.AllowClose = False 
  End Sub 
  
  <Personalizable(PersonalizationScope.User, True), _
   WebBrowsable()>  _ 
  Public Property ContentText() As String 
    Get 
      Return _contentText 
    End Get 
    Set 
      _contentText = value
    End Set 
  End Property
    
  Protected Overrides Sub CreateChildControls() 
    Controls.Clear()
    DisplayContent = New Label()
    DisplayContent.Text = Me.ContentText
    DisplayContent.BackColor = _
      System.Drawing.Color.LightBlue
    Me.Controls.Add(DisplayContent) 
    input = New TextBox() 
    Me.Controls.Add(input)
    Dim update As New Button()
    update.Text = "Set Label Content" 
    AddHandler update.Click, AddressOf Me.submit_Click
    Me.Controls.Add(update) 
    ChildControlsCreated = True 
  
  End Sub 

  Private Sub submit_Click(ByVal sender As Object, _
                           ByVal e As EventArgs)  
    ' Update the label string.
    If input.Text <> String.Empty Then
      _contentText = input.Text & "<br />"
      input.Text = String.Empty 
      DisplayContent.Text = Me.ContentText
    End If
  
  End Sub 
  
End Class 

End Namespace

Im zweiten Teil des Beispiels wird gezeigt, wie auf das TextDisplayWebPart Steuerelement in einer ASP.NET-Webseite verwiesen wird. Beachten Sie, dass im deklarativen Markup der ExportMode Eigenschaftswert auf All festgelegt ist, was bedeutet, dass sogar Eigenschaften mit vertraulichen Werten exportiert werden.

<%@ page language="C#" %>
<%@ register tagprefix="aspSample" 
             Namespace="Samples.AspNet.CS.Controls" 
             Assembly="TextDisplayWebPartCS"%>

<!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>ASP.NET Example</title>
</head>
<body>
  <form id="Form1" runat="server">
    <asp:webpartmanager id="WebPartManager1" runat="server" />
    <asp:webpartzone
      id="WebPartZone1"
      runat="server"
      title="Zone 1"
      PartChromeType="TitleAndBorder">
        <parttitlestyle font-bold="true" ForeColor="#3300cc" />
        <partstyle
          borderwidth="1px"   
          borderstyle="Solid"  
          bordercolor="#81AAF2" />
        <zonetemplate>
          <aspSample:TextDisplayWebPart 
            runat="server"   
            id="textwebpart" 
            title = "Text WebPart" 
            ExportMode="All" 
            />
        </zonetemplate>
    </asp:webpartzone>
    <br />
  </form>
</body>
</html>
<%@ page language="VB" %>
<%@ register tagprefix="aspSample" 
             Namespace="Samples.AspNet.VB.Controls" 
             Assembly="TextDisplayWebPartVB"%>

<!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>ASP.NET Example</title>
</head>
<body>
  <form id="Form1" runat="server">
    <asp:webpartmanager id="WebPartManager1" runat="server" />
    <asp:webpartzone
      id="WebPartZone1"
      runat="server"
      title="Zone 1"
      PartChromeType="TitleAndBorder">
        <parttitlestyle font-bold="true" ForeColor="#3300cc" />
        <partstyle
          borderwidth="1px"   
          borderstyle="Solid"  
          bordercolor="#81AAF2" />
        <zonetemplate>
          <aspSample:TextDisplayWebPart 
            runat="server"   
            id="textwebpart" 
            title = "Text WebPart" 
            ExportMode="All" 
            />
        </zonetemplate>
    </asp:webpartzone>
    <br />
  </form>
</body>
</html>

Laden Sie die Webseite in einem Browser, und klicken Sie im Verbenmenü des ExportMode Steuerelements auf das Exportverb, und befolgen Sie die Anweisungen zum Exportieren einer Beschreibungsdatei mit den Zustands- und Eigenschaftsdaten des Steuerelements.

Hinweise

Ein Wert aus der WebPartExportMode Enumeration kann auf die WebPart.ExportMode -Eigenschaft angewendet werden, um anzugeben, welche Eigenschaften aus einem Webpart-Steuerelement exportiert werden können. Standardmäßig können die Eigenschaften eines WebPart Steuerelements nicht exportiert werden, und die Eigenschaft des Steuerelements ExportMode ist auf Nonefestgelegt. Um den Export aller Eigenschaften für das Steuerelement zu aktivieren, legen Sie den ExportMode Wert auf fest All. Um nur bestimmte Eigenschaften zu exportieren und gleichzeitig den Export von Eigenschaften zu verhindern, die vertrauliche Daten enthalten, legen Sie den Eigenschaftswert auf fest NonSensitiveData.

Eine Eigenschaft kann über das PersonalizableAttribute -Attribut als vertraulich gekennzeichnet werden.

Hinweis

Um das Exportfeature für eine Webanwendung zu aktivieren, die Webpart-Steuerelemente enthält, müssen Sie in der Web.config-Datei für Ihre Anwendung dem <webParts> Element innerhalb des <system.web> Abschnitts ein Attribut hinzufügen, wie im folgenden Markup dargestellt:

<webParts enableExport="true">
</webParts>

Gilt für:

Weitere Informationen