WebPartManager.GetCurrentWebPartManager Method (Page)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Retrieves a reference to the current instance of the WebPartManager control on a page.

Namespace:   System.Web.UI.WebControls.WebParts
Assembly:  System.Web (in System.Web.dll)

public static WebPartManager GetCurrentWebPartManager(
	Page page


Type: System.Web.UI.Page

The Web page that contains an instance of the WebPartManager.

Return Value

Type: System.Web.UI.WebControls.WebParts.WebPartManager

A WebPartManager that references the current instance of the control on a page.

Exception Condition

page is null.

The GetCurrentWebPartManager method is useful in contexts where you want to retrieve a reference to the current WebPartManager control. A common scenario where this would occur is if you are writing a custom control that cannot know during development what the ID of the WebPartManager control on its page will be.


The GetCurrentWebPartManager method is static, so you can call it directly without needing an instance of a WebPartManager control.

Some controls in the Web Parts control set, such as WebPart controls, have a WebPartManager property that can retrieve a reference to the current WebPartManager control. Hence, when working with such controls, you should use this property to retrieve a reference.

If you are coding in a context where you know the ID of the WebPartManager control, such as writing code inline within a Web page, it is simplest and most efficient to refer directly to the WebPartManager control by using its ID.

The following code example demonstrates how to use the GetCurrentWebPartManager method. The example has two parts: a custom server control, and a Web page that hosts the control.

The custom Label control uses the GetCurrentWebPartManager method to retrieve the ID of the WebPartManager control on the current page, and then displays the ID.

namespace Samples.AspNet.CS.Controls
  using System;
  using System.Web;
  using System.Web.Security;
  using System.Security.Permissions;
  using System.Web.UI;
  using System.Web.UI.WebControls;
  using System.Web.UI.WebControls.WebParts;

    Level = AspNetHostingPermissionLevel.Minimal)]
    Level = AspNetHostingPermissionLevel.Minimal)]
  public class MyManagerIDLabel : Label

    protected override void OnPreRender(EventArgs e)

      this.Text = 



The following code example provides the Web page that hosts the control in a WebPartZone zone.

<%@ Page Language="C#" %>
<%@ Register 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
    <form id="form1" runat="server">
      <asp:WebPartManager ID="WebPartManager1" runat="server">
      <asp:WebPartZone ID="WebPartZone1" runat="server">
          <aspSample:MyManagerIDLabel ID="mgrID" runat="server" 
            Title="Manager ID Label" 
            Description="Displays the ID of the current WebPartManger."/>

After you load the page in a browser, notice that the ID of the current WebPartManager control is displayed within the custom Label control.

.NET Framework
Available since 2.0
Return to top