Bagikan melalui


WebPart.ExportMode Properti

Definisi

Mendapatkan atau mengatur apakah semua, beberapa, atau tidak ada properti kontrol yang WebPart dapat diekspor.

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

Nilai Properti

Salah WebPartExportMode satu nilai. Default adalah None.

Atribut

Pengecualian

Nilai yang ditentukan bukan salah WebPartExportMode satu nilai.

Kontrol sudah dimuat dan cakupan personalisasi kontrol diatur ke User cakupan.

Contoh

Contoh kode berikut menunjukkan penggunaan ExportMode properti . Perhatikan bahwa agar contoh kode ekspor berfungsi, Anda juga harus memperbarui file Web.config dengan menambahkan atribut enableExport="true" ke <webParts> elemen , seperti yang ditunjukkan di bagian Keterangan.

Bagian pertama dari contoh ini berisi kode untuk kontrol bernama TextDisplayWebPart. Kontrol ini sama dengan kontrol kustom yang ditemukan di bagian Contoh dari WebPart gambaran umum kelas, kecuali bahwa kontrol menambahkan Personalizable atribut ke TextDisplayWebPart.ContentText properti sehingga properti dapat diekspor. Perhatikan bahwa deklarasi atribut menyertakan nilai true untuk isSensitive parameter , yang berarti bahwa properti ditandai sebagai data sensitif untuk tujuan ekspor. Agar contoh kode berjalan, Anda harus mengkompilasi kode sumber ini. Anda dapat mengkompilasinya secara eksplisit dan menempatkan rakitan yang dihasilkan di folder Bin situs Web Anda atau singgahan perakitan global. Atau, Anda dapat meletakkan kode sumber di folder App_Code situs Anda, tempat kode tersebut akan dikompilasi secara dinamis pada durasi. Contoh kode ini mengasumsikan bahwa Anda mengkompilasi kode sumber ke dalam rakitan, menempatkannya di subfolder Bin aplikasi Web Anda, dan mereferensikan perakitan dengan Register direktif di halaman Web Anda. Untuk panduan yang menunjukkan kedua metode kompilasi, lihat Panduan: Mengembangkan dan Menggunakan Kontrol Server Web Kustom.

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

Bagian kedua dari contoh menunjukkan cara mereferensikan TextDisplayWebPart kontrol di halaman web ASP.NET. Perhatikan bahwa dalam markup deklaratif, ExportMode nilai properti diatur ke All, yang berarti bahwa bahkan properti dengan nilai sensitif akan diekspor.

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

Muat halaman Web di browser, dan pada menu WebPart kata kerja kontrol, klik kata kerja ekspor dan ikuti instruksi untuk mengekspor file deskripsi yang berisi status kontrol dan data properti.

Keterangan

Secara default, WebPart kontrol tidak dapat diekspor dan propertinya ExportMode diatur ke None. Untuk mengaktifkan ekspor semua properti untuk kontrol, atur nilai ke ExportModeAll. Untuk mengekspor hanya properti tertentu sambil mencegah ekspor properti yang berisi data sensitif, Anda mengatur nilai properti ke NonSensitiveData.

Untuk mengekspor deskripsi nilai properti untuk WebPart kontrol, properti juga harus ditandai dengan Personalizable atribut dalam metadata untuk kode sumber properti. Untuk detailnya, lihat PersonalizableAttribute.

Catatan

Untuk mengaktifkan fitur ekspor untuk aplikasi Web yang menyertakan kontrol Bagian Web, dalam file Web.config untuk aplikasi Anda, Anda harus menambahkan atribut ke <webParts> elemen di dalam <system.web> bagian , seperti dalam markup berikut.

<webParts enableExport="true">

</webParts>

Properti ini tidak dapat diatur oleh tema atau tema lembar gaya. Untuk informasi selengkapnya, lihat ThemeableAttribute dan ASP.NET Tema dan Kulit.

Cakupan personalisasi properti ini diatur ke Shared dan hanya dapat dimodifikasi oleh pengguna yang berwenang. Untuk informasi selengkapnya, lihat PersonalizableAttribute dan Gambaran Umum Personalisasi Bagian Web.

Berlaku untuk

Lihat juga