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

Определение

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

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

Поля

All 1

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

None 0

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

NonSensitiveData 2

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

Примеры

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

Первая часть этого примера содержит код для элемента управления с именем TextDisplayWebPart. Этот элемент управления совпадает с пользовательским элементом управления, найденным в разделе WebPart Examples класса, за исключением того, что он добавляет PersonalizableAttribute свойство в TextDisplayWebPart.ContentText свойство, чтобы можно было экспортировать свойство. Обратите внимание, что объявление атрибута true содержит значение параметра isSensitive , то есть свойство помечается как конфиденциальные данные для экспорта. Для запуска примера кода необходимо скомпилировать этот исходный код. Его можно скомпилировать явным образом и поместить результирующая сборка в папку Bin веб-сайта или глобальный кэш сборок. Кроме того, исходный код можно поместить в папку App_Code сайта, где он будет динамически компилироваться во время выполнения. В этом примере кода предполагается, что исходный код компилируется в сборку, помещается в вложенную папку bin веб-приложения и ссылается на сборку с 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 команд элемента управления щелкните команду экспорта и следуйте инструкциям, чтобы экспортировать файл описания, содержащий данные состояния и свойства элемента управления.

Комментарии

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

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

Примечание

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

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

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

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