WebPart.ExportMode Свойство

Определение

Получает или задает значение, указывающее, можно ли экспортировать все свойства элемента управления WebPart, только некоторые из них или же вообще не экспортировать эти свойства.Gets or sets whether all, some, or none of a WebPart control's properties can be exported.

public:
 virtual property System::Web::UI::WebControls::WebParts::WebPartExportMode ExportMode { System::Web::UI::WebControls::WebParts::WebPartExportMode get(); void set(System::Web::UI::WebControls::WebParts::WebPartExportMode value); };
[System.Web.UI.Themeable(false)]
[System.Web.UI.WebControls.WebParts.Personalizable(System.Web.UI.WebControls.WebParts.PersonalizationScope.Shared)]
public virtual System.Web.UI.WebControls.WebParts.WebPartExportMode ExportMode { get; set; }
[<System.Web.UI.Themeable(false)>]
[<System.Web.UI.WebControls.WebParts.Personalizable(System.Web.UI.WebControls.WebParts.PersonalizationScope.Shared)>]
member this.ExportMode : System.Web.UI.WebControls.WebParts.WebPartExportMode with get, set
Public Overridable Property ExportMode As WebPartExportMode

Значение свойства

WebPartExportMode

Одно из значений перечисления WebPartExportMode.One of the WebPartExportMode values. Значение по умолчанию — None.The default is None.

Атрибуты

Исключения

Указанное значение не равно ни одному из значений WebPartExportMode.The value specified is not one of the WebPartExportMode values.

Элемент управления уже загружен, и область персонализации элемента управления задана как область User.The control is already loaded and the personalization scope of the control is set to the User scope.

Примеры

В следующем примере кода демонстрируется использование ExportMode свойство.The following code example demonstrates the use of the ExportMode property. Обратите внимание, что для работы примера кода экспорта необходимо также обновить файл Web.config, добавив атрибут enableExport="true" к <webParts> элементу, как показано в разделе "Примечания".Note that for the export code example to work, you must also update your Web.config file by adding the attribute enableExport="true" to the <webParts> element, as indicated in the Remarks section.

Первая часть этого примера содержит код для элемента управления с именем TextDisplayWebPart .The first part of this example contains the code for a control named TextDisplayWebPart. Этот элемент управления аналогичен пользовательскому элементу управления, который находится в разделе «пример» в WebPart обзоре класса, за исключением того, что он добавляет Personalizable к TextDisplayWebPart.ContentText свойству атрибут, чтобы можно было экспортировать свойство.This control is the same as the custom control that is found in the Example section of the WebPart class overview, except that it adds a Personalizable attribute to the TextDisplayWebPart.ContentText property so the property can be exported. Обратите внимание, что объявление атрибута включает в себя значение true isSensitive параметра, означающее, что свойство помечено как конфиденциальные данные для целей экспорта.Note that the attribute declaration includes a value of true for the isSensitive parameter, meaning that the property is marked as sensitive data for export purposes. Для выполнения примера кода необходимо скомпилировать этот исходный код.For the code example to run, you must compile this source code. Его можно скомпилировать явным образом и разместить полученную сборку в папке Bin веб-сайта или в глобальном кэше сборок.You can compile it explicitly and put the resulting assembly in your Web site's Bin folder or the global assembly cache. Кроме того, можно разместить исходный код в папке App_Code сайта, где он будет динамически компилироваться во время выполнения.Alternatively, you can put the source code in your site's App_Code folder, where it will be dynamically compiled at run time. В этом примере кода предполагается, что исходный код компилируется в сборку, размещается во вложенной папке Bin веб-приложения и ссылается на сборку с помощью Register директивы на веб-странице.This code example assumes that you compile the source code into an assembly, place it in a Bin subfolder of your Web application, and reference the assembly with a Register directive in your Web page. Пошаговое руководство, в котором демонстрируются оба метода компиляции, см. в разделе Пошаговое руководство. Разработка и использование пользовательского веб-элемента управления.For a walkthrough that demonstrates both methods of compiling, see Walkthrough: Developing and Using a Custom Web Server Control.

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.The second part of the example shows how to reference the TextDisplayWebPart control in an ASP.NET Web page. Обратите внимание, что в декларативной разметке ExportMode для свойства задано значение All , означающее, что будут экспортированы даже свойства с конфиденциальными значениями.Note that in the declarative markup, the ExportMode property value is set to All, meaning that even properties with sensitive values will be exported.

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

Загрузите веб-страницу в браузере и в меню команд WebPart элемента управления щелкните команду Экспорт и следуйте инструкциям, чтобы экспортировать файл описания, содержащий состояние элемента управления и данные свойства.Load the Web page in a browser, and on the verbs menu of the WebPart control, click the export verb and follow the instructions to export a description file containing the control's state and property data.

Комментарии

По умолчанию WebPart элемент управления не может быть экспортирован, а его ExportMode свойство имеет значение None .By default, a WebPart control cannot be exported and its ExportMode property is set to None. Чтобы включить экспорт всех свойств элемента управления, задайте для него ExportMode значение All .To enable exporting all properties for the control, set the ExportMode value to All. Чтобы экспортировать только определенные свойства, не мешая экспорту свойств, содержащих конфиденциальные данные, задайте для свойства значение NonSensitiveData .To export only certain properties while preventing the export of properties that contain sensitive data, you set the property value to NonSensitiveData.

Чтобы экспортировать описания значений свойств для WebPart элемента управления, эти свойства также должны быть помечены Personalizable атрибутом в метаданных для исходного кода свойства.To export property value descriptions for a WebPart control, the properties must also be marked with the Personalizable attribute in the metadata for the property's source code. Дополнительные сведения см. в разделе PersonalizableAttribute.For details, see PersonalizableAttribute.

Примечание

Чтобы включить функцию экспорта для веб-приложения, включающего веб-части элементы управления, в Web.configном файле приложения необходимо добавить атрибут к <webParts> элементу в <system.web> разделе, как показано в следующей разметке.To enable the export feature for a Web application that includes Web Parts controls, in the Web.config file for your application, you must add an attribute to the <webParts> element within the <system.web> section, as in the following markup.

<webParts enableExport="true">

</webParts>

Значение для данного свойства нельзя задать с помощью тем или тем таблиц стилей.This property cannot be set by themes or style sheet themes. Дополнительные сведения см. в статьях ThemeableAttribute и ASP.NET Themes и обложки.For more information, see ThemeableAttribute and ASP.NET Themes and Skins.

Область персонализации этого свойства имеет значение Shared и может быть изменена только полномочными пользователями.The personalization scope of this property is set to Shared and can be modified only by authorized users. Дополнительные сведения см. в статьях PersonalizableAttribute и веб-части Общие сведения о персонализации.For more information, see PersonalizableAttribute and Web Parts Personalization Overview.

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

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