WebPart.ExportMode Egenskap
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Hämtar eller anger om alla, vissa eller ingen av en WebPart kontrolls egenskaper kan exporteras.
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
Egenskapsvärde
Ett av WebPartExportMode värdena. Standardvärdet är None.
- Attribut
Undantag
Det angivna värdet är inte ett av WebPartExportMode värdena.
Kontrollen har redan lästs in och kontrollens anpassningsomfång är inställt på omfånget User .
Exempel
Följande kodexempel visar hur egenskapen används ExportMode . Observera att för att exportkodexemplet ska fungera måste du också uppdatera din Web.config-fil genom att lägga till attributet enableExport="true" i elementet <webParts> , enligt beskrivningen i avsnittet Kommentarer.
Den första delen av det här exemplet innehåller koden för en kontroll med namnet TextDisplayWebPart. Den här kontrollen är samma som den anpassade kontrollen som finns i avsnittet Exempel i klassöversikten WebPart , förutom att den lägger till ett Personalizable attribut till egenskapen så att TextDisplayWebPart.ContentText egenskapen kan exporteras. Observera att attributdeklarationen innehåller värdet true för för parametern isSensitive , vilket innebär att egenskapen är markerad som känsliga data i exportsyfte. För att kodexemplet ska köras måste du kompilera den här källkoden. Du kan kompilera den explicit och placera den resulterande sammansättningen i webbplatsens bin-mapp eller den globala sammansättningscacheminnet. Du kan också placera källkoden i webbplatsens App_Code mapp, där den kompileras dynamiskt vid körning. Det här kodexemplet förutsätter att du kompilerar källkoden till en sammansättning, placerar den i en undermapp för bin i webbprogrammet och refererar till sammansättningen med ett Register direktiv på webbsidan. En genomgång som visar båda kompileringsmetoderna finns i Genomgång: Utveckla och använda en anpassad webbserverkontroll.
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
Den andra delen av exemplet visar hur du refererar till kontrollen TextDisplayWebPart på en ASP.NET webbsida. Observera att egenskapsvärdet i den deklarativa markeringen ExportMode är inställt på All, vilket innebär att även egenskaper med känsliga värden exporteras.
<%@ 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>
Läs in webbsidan i en webbläsare och klicka på exportverb på verbmenyn WebPart i kontrollen och följ anvisningarna för att exportera en beskrivningsfil som innehåller kontrollens tillstånds- och egenskapsdata.
Kommentarer
Som standard går det inte att exportera en WebPart kontroll och dess ExportMode egenskap är inställd på None. Om du vill aktivera export av alla egenskaper för kontrollen anger du värdet ExportMode till All. Om du bara vill exportera vissa egenskaper samtidigt som du förhindrar export av egenskaper som innehåller känsliga data anger du egenskapsvärdet till NonSensitiveData.
Om du vill exportera egenskapsvärdebeskrivningar för en WebPart kontroll måste egenskaperna också markeras med Personalizable attributet i metadata för egenskapens källkod. Mer information finns i PersonalizableAttribute.
Note
Om du vill aktivera exportfunktionen för ett webbprogram som innehåller kontroller för webbdelar måste du i Web.config-filen för ditt program lägga till ett attribut till elementet <webParts><system.web> i avsnittet, som i följande markering.
<webParts enableExport="true">
</webParts>
Den här egenskapen kan inte anges med teman eller formatmallsteman. Mer information finns i ThemeableAttribute and ASP.NET Themes and Skins.
Anpassningsomfånget för den här egenskapen är inställt på Shared och kan endast ändras av behöriga användare. Mer information finns i PersonalizableAttributeoch Översikt över anpassning av webbdelar.