다음을 통해 공유


WebPart.ExportMode 속성

정의

컨트롤의 속성을 모두, 일부 또는 전혀 WebPart 내보낼 수 있는지 여부를 가져오거나 설정합니다.

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 하나입니다. 기본값은 None입니다.

특성

예외

지정된 값이 값 중 WebPartExportMode 하나가 아닙니다.

컨트롤이 이미 로드되고 컨트롤의 개인 설정 범위가 범위로 User 설정됩니다.

예제

다음 코드 예제에서는 속성의 사용을 보여 줍니다 ExportMode . 내보내기 코드 예제가 작동하려면 주의 섹션에 표시된 대로 요소에 특성을 enableExport="true"<webParts> 추가하여 Web.config 파일을 업데이트해야 합니다.

이 예제의 첫 번째 부분에는 명명 TextDisplayWebPart된 컨트롤에 대한 코드가 포함되어 있습니다. 이 컨트롤은 속성을 내보낼 수 있도록 속성에 특성을 추가 Personalizable 한다는 점을 제외하고 클래스 개요의 WebPart 예제 섹션에 TextDisplayWebPart.ContentText 있는 사용자 지정 컨트롤과 동일합니다. 특성 선언에는 매개 변수의 trueisSensitive 값이 포함됩니다. 즉, 속성이 내보내기 목적으로 중요한 데이터로 표시됩니다. 코드 예제를 실행하려면 이 소스 코드를 컴파일해야 합니다. 명시적으로 컴파일하고 결과 어셈블리를 웹 사이트의 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

예제의 두 번째 부분에서는 ASP.NET 웹 페이지에서 컨트롤을 참조 TextDisplayWebPart 하는 방법을 보여줍니다. 선언적 태그 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>

브라우저에서 웹 페이지를 로드하고 컨트롤의 WebPart 동사 메뉴에서 내보내기 동사를 클릭하고 지침에 따라 컨트롤의 상태 및 속성 데이터가 포함된 설명 파일을 내보냅니다.

설명

기본적으로 컨트롤을 WebPart 내보낼 수 없으며 해당 ExportMode 속성은 .로 설정됩니다 None. 컨트롤에 대한 모든 속성을 내보낼 수 있도록 하려면 값을 All.로 설정합니다ExportMode. 중요한 데이터가 포함된 속성의 내보내기를 방지하는 동안 특정 속성만 내보내려면 속성 값을 NonSensitiveData.로 설정합니다.

컨트롤에 대한 WebPart 속성 값 설명을 내보내려면 속성의 소스 코드에 대한 메타데이터의 특성으로 속성도 표시 Personalizable 해야 합니다. 자세한 내용은 PersonalizableAttribute참조하세요.

메모

웹 파트 컨트롤을 포함하는 웹 애플리케이션에 내보내기 기능을 사용하도록 설정하려면 애플리케이션의 Web.config 파일에서 다음 태그와 같이 섹션 내 <system.web> 의 요소에 특성을 <webParts> 추가해야 합니다.

<webParts enableExport="true">

</webParts>

이 속성은 테마 또는 스타일시트 테마로 설정할 수 없습니다. 자세한 내용은 테마 및 스킨을 참조ThemeableAttribute하고 ASP.NET.

이 속성의 개인 설정 범위는 권한 있는 사용자에 의해서만 설정 Shared 되고 수정할 수 있습니다. 자세한 내용은 웹 파트 개인 설정 개요 및 웹 파트를 참조 PersonalizableAttribute 하세요.

적용 대상

추가 정보