BehaviorEditorPart Web 服务器控件声明性语法
[本文档仅供预览,在以后的发行版中可能会发生更改。包含的空白主题用作占位符。]
提供一个编辑器控件,该控件使网页用户可以在相关联的 WebPart 控件上编辑数个用户界面 (UI) 属性。
<asp:BehaviorEditorPart
AccessKey="string"
BackColor="color name|#dddddd"
BackImageUrl="uri"
BorderColor="color name|#dddddd"
BorderStyle="NotSet|None|Dotted|Dashed|Solid|Double|Groove|Ridge|
Inset|Outset"
BorderWidth="size"
ChromeState="Normal|Minimized"
ChromeType="Default|TitleAndBorder|None|TitleOnly|BorderOnly"
CssClass="string"
DefaultButton="string"
Description="string"
Direction="NotSet|LeftToRight|RightToLeft"
Enabled="True|False"
EnableTheming="True|False"
EnableViewState="True|False"
Font-Bold="True|False"
Font-Italic="True|False"
Font-Names="string"
Font-Overline="True|False"
Font-Size="string|Smaller|Larger|XX-Small|X-Small|Small|Medium|
Large|X-Large|XX-Large"
Font-Strikeout="True|False"
Font-Underline="True|False"
ForeColor="color name|#dddddd"
GroupingText="string"
Height="size"
HorizontalAlign="NotSet|Left|Center|Right|Justify"
ID="string"
OnDataBinding="DataBinding event handler"
OnDisposed="Disposed event handler"
OnInit="Init event handler"
OnLoad="Load event handler"
OnPreRender="PreRender event handler"
OnUnload="Unload event handler"
runat="server"
ScrollBars="None|Horizontal|Vertical|Both|Auto"
SkinID="string"
Style="string"
TabIndex="integer"
Title="string"
ToolTip="string"
Visible="True|False"
Width="size"
Wrap="True|False"
/>
备注
BehaviorEditorPart 类是一个从 EditorPart 类派生的编辑器控件,用于编辑某些属性,这些属性影响相关联的 WebPart 或 GenericWebPart 控件的行为。
有关 BehaviorEditorPart 和 Web 部件控件的更多信息,请参见 ASP.NET Web Parts Pages。
示例
下面的代码示例演示如何利用 Calendar 控件以声明方式在 Web 部件方案中使用 BehaviorEditorPart 控件。 用户可以通过网页进入编辑模式,以编辑 Calendar 控件的某些方面。 **“切换范围”**按钮将页切换到用户个性化设置范围或共享个性化设置范围。 **“编辑模式”和“浏览模式”**按钮分别将页切换到相应的显示模式。 注意,在文件的 <script> 标记节中,两个处理事件的方法使用 Personalization 属性访问基础对象的有用成员。 具体来说,这两个方法在通过 Personalization 属性访问的对象上使用 ToggleScope 方法和 Scope 属性。
若要使该代码示例正常运行,还必须允许一个或多个用户个性化共享范围内的页。 为此,请在 Web.config 文件的 webParts 元素(ASP.NET 设置架构) 中添加一项。
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs)
If ((mgr1.Personalization.Scope = PersonalizationScope.User) _
And (mgr1.Personalization.CanEnterSharedScope)) Then
mgr1.Personalization.ToggleScope()
ElseIf (mgr1.Personalization.Scope = PersonalizationScope.Shared) Then
mgr1.Personalization.ToggleScope()
Else
'If the user cannot enter shared scope you may want
' to notify them on the page.
End If
End Sub
Protected Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs)
mgr1.DisplayMode = WebPartManager.EditDisplayMode
End Sub
Protected Sub Button3_Click(ByVal sender As Object, ByVal e As System.EventArgs)
mgr1.DisplayMode = WebPartManager.BrowseDisplayMode
End Sub
Protected Sub Page_Load(ByVal sender As Object, ByVal e As CommandEventArgs)
Label1.Text = "Scope is: " _
+ mgr1.Personalization.Scope.ToString()
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="head1" runat="server">
<title>Web Parts Declarative Example</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:LoginName id="LoginName1" runat="server" />
<asp:WebPartManager id="mgr1" runat="server">
<Personalization InitialScope="Shared" Enabled="True" />
</asp:WebPartManager>
<asp:WebPartZone id="WebPartZone1" runat="server">
<ZoneTemplate>
<asp:Calendar id="Calendar1" runat="server" />
</ZoneTemplate>
<CloseVerb Text="Close This Part" />
<MinimizeVerb Text="Minimize This Part" />
<EditVerb Text="Edit This Part" />
</asp:WebPartZone>
<asp:EditorZone id="EditorZone1" runat="server">
<ZoneTemplate>
<asp:LayoutEditorPart HorizontalAlign="Center" id="Layout1" runat="server" Title="My Custom Layout" />
<asp:AppearanceEditorPart id="AppearanceEditorPart1"
runat="server" BackColor="LightGray" />
<asp:BehaviorEditorPart id="BehaviorEditorPart1"
runat="server" />
</ZoneTemplate>
</asp:EditorZone>
<hr />
<asp:Button id="Button1" runat="server" Text="Toggle Scope" OnClick="Button1_Click" />
<asp:Button id="Button2" runat="server" Text="Edit Mode" OnClick="Button2_Click" />
<asp:Button id="Button3" runat="server" Text="Browse Mode" OnClick="Button3_Click" />
<br />
<asp:Label id="Label1" runat="server" Text="" />
</div>
</form>
</body>
</html>
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
protected void Button1_Click(object sender, EventArgs e)
{
if ((mgr1.Personalization.Scope == PersonalizationScope.User)
&& (mgr1.Personalization.CanEnterSharedScope))
{
mgr1.Personalization.ToggleScope();
}
else if (mgr1.Personalization.Scope ==
PersonalizationScope.Shared)
{
mgr1.Personalization.ToggleScope();
}
else
{
// If the user cannot enter shared scope you may want
// to notify them on the page.
}
}
protected void Button2_Click(object sender, EventArgs e)
{
mgr1.DisplayMode = WebPartManager.EditDisplayMode;
}
protected void Button3_Click(object sender, EventArgs e)
{
mgr1.DisplayMode = WebPartManager.BrowseDisplayMode;
}
protected void Page_Load(object sender, EventArgs e)
{
Label1.Text = "Scope is: "
+ mgr1.Personalization.Scope.ToString();
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="head1" runat="server">
<title>Web Parts Declarative Example</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:LoginName id="LoginName1" runat="server" />
<asp:WebPartManager id="mgr1" runat="server">
<Personalization InitialScope="Shared" Enabled="True" />
</asp:WebPartManager>
<asp:WebPartZone id="WebPartZone1" runat="server">
<ZoneTemplate>
<asp:Calendar id="Calendar1" runat="server" />
</ZoneTemplate>
<CloseVerb Text="Close This Part" />
<MinimizeVerb Text="Minimize This Part" />
<EditVerb Text="Edit This Part" />
</asp:WebPartZone>
<asp:EditorZone id="EditorZone1" runat="server">
<ZoneTemplate>
<asp:LayoutEditorPart HorizontalAlign="Center" id="Layout1" runat="server" Title="My Custom Layout" />
<asp:AppearanceEditorPart id="AppearanceEditorPart1"
runat="server" BackColor="LightGray" />
<asp:BehaviorEditorPart id="BehaviorEditorPart1"
runat="server" />
</ZoneTemplate>
</asp:EditorZone>
<hr />
<asp:Button id="Button1" runat="server" Text="Toggle Scope" OnClick="Button1_Click" />
<asp:Button id="Button2" runat="server" Text="Edit Mode" OnClick="Button2_Click" />
<asp:Button id="Button3" runat="server" Text="Browse Mode" OnClick="Button3_Click" />
<br />
<asp:Label id="Label1" runat="server" Text="" />
</div>
</form>
</body>
</html>