用作 Web 部件控件集的中心类,管理所有的 Web 部件控件、功能和网页上发生的事件。
     | 
|---|
<asp:WebPartManager
????CloseProviderWarning="string"
????DeleteWarning="string"
????EnableClientScript="True|False"
????EnableTheming="True|False"
????EnableViewState="True|False"
????ExportSensitiveDataWarning="string"
????ID="string"
????OnAuthorizeWebPart="AuthorizeWebPart event handler"
????OnConnectionsActivated="ConnectionsActivated event handler"
????OnConnectionsActivating="ConnectionsActivating event handler"
????OnDataBinding="DataBinding event handler"
????OnDisplayModeChanged="DisplayModeChanged event handler"
????OnDisplayModeChanging="DisplayModeChanging event handler"
????OnDisposed="Disposed event handler"
????OnInit="Init event handler"
????OnLoad="Load event handler"
????OnPreRender="PreRender event handler"
????OnSelectedWebPartChanged="SelectedWebPartChanged event handler"
????OnSelectedWebPartChanging="SelectedWebPartChanging event handler"
????OnUnload="Unload event handler"
????OnWebPartAdded="WebPartAdded event handler"
????OnWebPartAdding="WebPartAdding event handler"
????OnWebPartClosed="WebPartClosed event handler"
????OnWebPartClosing="WebPartClosing event handler"
????OnWebPartDeleted="WebPartDeleted event handler"
????OnWebPartDeleting="WebPartDeleting event handler"
????OnWebPartMoved="WebPartMoved event handler"
????OnWebPartMoving="WebPartMoving event handler"
????OnWebPartsConnected="WebPartsConnected event handler"
????OnWebPartsConnecting="WebPartsConnecting event handler"
????OnWebPartsDisconnected="WebPartsDisconnected event handler"
????OnWebPartsDisconnecting="WebPartsDisconnecting event handler"
????Personalization-Enabled="True|False"
????Personalization-InitialScope="User|Shared"
????Personalization-ProviderName="string"
????runat="server"
????SkinID="string"
>
????<Personalization
????????Enabled="True|False"
????????InitialScope="User|Shared"
????????ProviderName="string" />
????<StaticConnections>
????????<asp:WebPartConnection
????????????ConsumerConnectionPointID="string"
????????????ConsumerID="string"
????????????ID="string"
????????????ProviderConnectionPointID="string"
????????????ProviderID="string" >
????????????<asp:RowToFieldTransformer
????????????????FieldName="string" />
????????????<asp:RowToParametersTransformer
????????????????ConsumerFieldNames="string"
????????????????ProviderFieldNames="string"/>
????????</asp:WebPartConnection>
????</StaticConnections>
</asp:WebPartManager>  | 
备注
示例
      
        
          下面的代码示例演示如何利用 Calendar 控件以声明方式在 Web 部件方案中使用 WebPartManager 控件。用户可以通过网页进入编辑模式,以编辑 Calendar 控件的某些方面。“切换范围”按钮可将页面切换到用户或共享个性化设置范围。“编辑模式”和“浏览模式”按钮分别用于将页面切换到相应的显示模式。请注意,在文件的 <script> 标记节中,在处理事件的方法内,有两个方法使用 Personalization 属性访问基础对象的有用成员。具体来说,这两个方法在通过 Personalization 属性访问的对象上使用 ToggleScope 方法和 Scope 属性。  
          若要使该代码示例正常运行,还必须允许一个或多个用户个性化共享范围内的页。为此,请在 Web.config 文件的 webParts 元素(ASP.NET 设置架构)中添加一项。
        
      
      | Visual Basic? |  复制代码 | 
|---|
<%@ 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>
 | 
| C#? |  复制代码 | 
|---|
<%@ 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>
 | 
 
     
请参见
参考
WebPartManager
其他资源
ASP.NET Web 部件页