WebPartExportMode Wyliczenie
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Określa, czy można wyeksportować wszystkie, niektóre lub żadne WebPart właściwości kontrolki.
public enum class WebPartExportMode
public enum WebPartExportMode
type WebPartExportMode =
Public Enum WebPartExportMode
- Dziedziczenie
Pola
All | 1 | Wszystkie właściwości kontrolki składników Web Part można wyeksportować. |
None | 0 | Nie można wyeksportować właściwości kontrolki składników Web Part. |
NonSensitiveData | 2 | Można eksportować tylko właściwości kontrolki składników Web Part, które zostały zdefiniowane jako niewrażliwe. |
Przykłady
W poniższym przykładzie pokazano użycie WebPart.ExportMode właściwości . Należy pamiętać, że aby przykładowy kod eksportu działał, należy również zaktualizować plik Web.config, jak wskazano w sekcji Uwagi .
Pierwsza część tego przykładu zawiera kod kontrolki o nazwie TextDisplayWebPart
. Ta kontrolka jest taka sama jak kontrolka niestandardowa, która znajduje się w sekcjiWebPart Przykłady klasy, z tą różnicą, że dodaje PersonalizableAttribute element do TextDisplayWebPart.ContentText
właściwości , aby można było wyeksportować właściwość . Należy pamiętać, że deklaracja atrybutu zawiera wartość true
parametru isSensitive
, co oznacza, że właściwość jest oznaczona jako poufne dane na potrzeby eksportu. Aby można było uruchomić przykładowy kod, należy skompilować ten kod źródłowy. Można je skompilować jawnie i umieścić wynikowy zestaw w folderze Bin witryny sieci Web lub globalnej pamięci podręcznej zestawów. Alternatywnie można umieścić kod źródłowy w folderze App_Code witryny, w którym będzie dynamicznie kompilowany w czasie wykonywania. W tym przykładzie kodu przyjęto założenie, że skompilujesz kod źródłowy do zestawu, umieścisz go w podfolderze Bin aplikacji internetowej i odwołujesz się do zestawu dyrektywą Register
na stronie sieci Web. Aby zapoznać się z przewodnikiem, który demonstruje obie metody kompilowania, zobacz Przewodnik: opracowywanie i używanie niestandardowej kontrolki serwera sieci Web.
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
W drugiej części przykładu pokazano, jak odwoływać się do kontrolki TextDisplayWebPart
na stronie internetowej ASP.NET. Należy pamiętać, że w adiustacji deklaratywnej ExportMode wartość właściwości jest ustawiona na Wartość Wszystkie, co oznacza, że zostaną wyeksportowane nawet właściwości z poufnymi wartościami.
<%@ 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>
Załaduj stronę internetową w przeglądarce, a następnie w menu ExportMode czasowników kontrolki kliknij czasownik eksportu i postępuj zgodnie z instrukcjami, aby wyeksportować plik opisu zawierający dane o stanie i właściwości kontrolki.
Uwagi
Wartość z WebPartExportMode
wyliczenia można zastosować do właściwości w WebPart.ExportMode celu określenia, które właściwości z kontrolki składników Web Part można wyeksportować. Domyślnie nie można wyeksportować właściwości kontrolki WebPart , a właściwość kontrolki jest ustawiona ExportMode na None
wartość . Aby włączyć eksportowanie wszystkich właściwości kontrolki, ustaw ExportMode wartość na All
. Aby wyeksportować tylko niektóre właściwości, uniemożliwiając eksport właściwości zawierających poufne dane, należy ustawić wartość właściwości na NonSensitiveData
.
Właściwość może być oznaczona jako wrażliwa za pomocą atrybutu PersonalizableAttribute .
Uwaga
Aby włączyć funkcję eksportowania dla aplikacji sieci Web, która zawiera kontrolki składników Web Part, w pliku Web.config aplikacji należy dodać atrybut do <webParts>
elementu w <system.web>
sekcji, jak w poniższym znaczniku:
<webParts enableExport="true">
</webParts>