WebPartExportMode Výčet
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Určuje, zda lze exportovat všechny, některé nebo žádné vlastnosti WebPart ovládacího prvku.
public enum class WebPartExportMode
public enum WebPartExportMode
type WebPartExportMode =
Public Enum WebPartExportMode
- Dědičnost
Pole
All | 1 | Všechny vlastnosti ovládacího prvku webové části lze exportovat. |
None | 0 | Žádné vlastnosti ovládacího prvku webové části nelze exportovat. |
NonSensitiveData | 2 | Exportovat lze pouze vlastnosti ovládacího prvku webových částí, které byly definovány jako necitlivý. |
Příklady
Následující příklad ukazuje použití WebPart.ExportMode vlastnosti. Všimněte si, že aby příklad exportu kódu fungoval, musíte také aktualizovat soubor Web.config, jak je uvedeno v části Poznámky .
První část tohoto příkladu obsahuje kód ovládacího prvku s názvem TextDisplayWebPart
. Tento ovládací prvek je stejný jako vlastní ovládací prvek, který se nachází v částiWebPart Příklady třídy s tím rozdílem, že přidá PersonalizableAttribute do TextDisplayWebPart.ContentText
vlastnosti vlastnost, aby bylo možné vlastnost exportovat. Všimněte si, že deklarace atributu obsahuje hodnotu true
parametru isSensitive
, což znamená, že vlastnost je označena jako citlivá data pro účely exportu. Aby se příklad kódu spustil, musíte tento zdrojový kód zkompilovat. Můžete ho explicitně zkompilovat a umístit výsledné sestavení do složky Bin webu nebo globální mezipaměti sestavení . Případně můžete zdrojový kód umístit do složky App_Code webu, kde se bude dynamicky kompilovat za běhu. Tento příklad kódu předpokládá, že zkompilujete zdrojový kód do sestavení, umístíte ho do podsložky Bin webové aplikace a na sestavení odkazujete direktivou Register
na webové stránce. Návod, který ukazuje obě metody kompilace, najdete v tématu Návod: Vývoj a použití vlastního ovládacího prvku webového serveru.
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
Druhá část příkladu ukazuje, jak odkazovat na TextDisplayWebPart
ovládací prvek na webové stránce ASP.NET. Všimněte si, ExportMode že v deklarativním kódu je hodnota vlastnosti nastavena na Vše, což znamená, že i vlastnosti s citlivými hodnotami budou exportovány.
<%@ 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>
Načtěte webovou stránku v prohlížeči a v nabídce ExportMode sloves ovládacího prvku klikněte na příkaz exportovat a postupujte podle pokynů k exportu souboru popisu obsahujícího data o stavu a vlastnosti ovládacího prvku.
Poznámky
Hodnotu z výčtu WebPartExportMode
lze použít na WebPart.ExportMode vlastnost určit, které vlastnosti z ovládacího prvku webové části lze exportovat. Ve výchozím nastavení nelze exportovat vlastnosti WebPart ovládacího prvku a vlastnost ovládacího prvku ExportMode je nastavena na None
. Pokud chcete povolit export všech vlastností ovládacího prvku, nastavte ExportMode hodnotu na All
. Chcete-li exportovat pouze určité vlastnosti a zároveň zabránit exportu vlastností obsahujících citlivá data, nastavte hodnotu vlastnosti na NonSensitiveData
hodnotu .
Vlastnost lze označit jako citlivou prostřednictvím atributu PersonalizableAttribute .
Poznámka
Chcete-li povolit funkci exportu pro webovou aplikaci, která obsahuje ovládací prvky webových částí, musíte v souboru Web.config pro vaši aplikaci přidat atribut do elementu <webParts>
v oddílu <system.web>
, jako v následujícím kódu:
<webParts enableExport="true">
</webParts>