Поделиться через


WebPartExportMode Перечисление

Определение

Указывает, можно ли экспортировать все, некоторые или ни один из свойств элемента управления WebPart.

public enum class WebPartExportMode
public enum WebPartExportMode
type WebPartExportMode = 
Public Enum WebPartExportMode
Наследование
WebPartExportMode

Поля

Имя Значение Описание
None 0

Ни один из свойств элемента управления веб-частей не может быть экспортирован.

All 1

Можно экспортировать все свойства элемента управления веб-частей.

NonSensitiveData 2

Экспортируются только свойства элемента управления веб-частей, которые определены как нечувствительные.

Примеры

В следующем примере показано использование WebPart.ExportMode свойства. Обратите внимание, что для примера кода экспорта необходимо также обновить файл Web.config, как указано в разделе "Примечания ".

Первая часть этого примера содержит код для элемента управления с именем TextDisplayWebPart. Этот элемент управления совпадает с пользовательским элементом управления, найденным в разделе WebPartExamples класса, за исключением того, что он добавляет в TextDisplayWebPart.ContentTextPersonalizableAttribute свойство, чтобы свойство можно было экспортировать. Обратите внимание, что объявление атрибута содержит значение true параметра isSensitive , то есть свойство помечается как конфиденциальные данные для экспорта. Для запуска примера кода необходимо скомпилировать этот исходный код. Вы можете скомпилировать его явным образом и поместить полученную сборку в папку bin веб-сайта или глобальный кэш сборок. Кроме того, исходный код можно поместить в папку App_Code сайта, где он будет динамически скомпилирован во время выполнения. В этом примере кода предполагается, что вы компилируете исходный код в сборку, помещаете его в вложенную папку веб-приложения и ссылаетесь на сборку с директивой Register на веб-странице. Пошаговое руководство, демонстрирующее оба метода компиляции, см. в пошаговом руководстве по разработке и использованию пользовательского веб-сервера.

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

Вторая часть примера показывает, как ссылаться на TextDisplayWebPart элемент управления на веб-странице ASP.NET. Обратите внимание, что в декларативной разметке ExportMode значение свойства имеет значение All, что означает, что экспортируются даже свойства с конфиденциальными значениями.

<%@ 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>

Загрузите веб-страницу в браузере и в меню ExportMode команд элемента управления щелкните команду экспорта и следуйте инструкциям, чтобы экспортировать файл описания, содержащий данные о состоянии и свойств элемента управления.

Комментарии

Значение из перечисления можно применить к WebPart.ExportMode свойству, чтобы указать, какие свойства из WebPartExportMode элемента управления веб-частей можно экспортировать. По умолчанию свойства WebPart элемента управления нельзя экспортировать, а свойство элемента управления ExportMode имеет значение None. Чтобы включить экспорт всех свойств элемента управления, задайте ExportMode для этого значения значение All. Чтобы экспортировать только определенные свойства, предотвращая экспорт свойств, содержащих конфиденциальные данные, задайте для свойства значение NonSensitiveData.

Свойство можно пометить как конфиденциальное PersonalizableAttribute через атрибут.

Замечание

Чтобы включить функцию экспорта для веб-приложения, включающую элементы управления веб-частей, в файле Web.config приложения необходимо добавить атрибут в <webParts> элемент в <system.web> разделе, как показано в следующей разметке:

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

Применяется к

См. также раздел