WebPart.CreateWebPartMenu 方法

Microsoft ASP.NET Load事件之后调用,用于修改或重写默认的菜单。

命名空间:  Microsoft.SharePoint.WebPartPages
程序集:  Microsoft.SharePoint(位于 Microsoft.SharePoint.dll 中)

语法

声明
Public Overridable Sub CreateWebPartMenu
用法
Dim instance As WebPart

instance.CreateWebPartMenu()
public virtual void CreateWebPartMenu()

备注

继承的System.Web.UI.Control.Load事件发生通知 Web 部件将WebPartMenu属性设置之后调用CreateWebPartMenu方法。

示例

下面的代码示例演示将父菜单项和两个菜单项添加到默认 Web 部件菜单重写的CreateWebPartMenu方法。它假定此方法是WebPart类包含两个自定义的布尔属性、 ParentItemIsVisible和EnableItem1,使您能够控制这些菜单项时都可见并已启用的一部分。此外应创建一个名为EventHandlerForItem1的事件处理程序。

Public Overrides Sub CreateWebPartMenu()
    ' Declare variables for menu items.
    Dim ParentItem As MenuItem
    Dim Item1 As MenuItem
    Dim Item2 As MenuItem

    ' Create three menu items:
    ' One parent item, and two submenu items.
    ' Create the parent item.
    ParentItem = New MenuItem("ParentItem", "", "ParentItemID")

    ' Create a submenu item with a server event on click.
    Item1 = New MenuItem("Item1", "Item1ID", New EventHandler(AddressOf EventHandlerForItem1))

    ' Create a submenu item with a client event on click. 
    Item2 = New MenuItem("Item2", "javascript:alert('Item2 was clicked.');", "Item2ID")

    ' Add the submenu items to the parent item.
    ParentItem.MenuItems.Add(Item1)
    ParentItem.MenuItems.Add(Item2)

    ' Add the parent item after the "Modify Shared/Personal Web Part"
    ' command in the default menu. 
    ' Retrieve the index of the "Modify Shared/Personal Web Part" command.
    Dim EditIndex As Integer = Me.WebPartMenu.MenuItems.IndexOf(Me.WebPartMenu.MenuItems.ItemFromID("MSOMenu_Edit"))

    ' Insert the parent item after the "Modify Shared/Personal Web Part" command.
    Me.WebPartMenu.MenuItems.Insert(EditIndex + 1, ParentItem)

    ' Add a separator above the parent item.
    ParentItem.BeginSection = True

    ' Check the "ParentItemIsVisible" custom Boolean property to decide whether to display the parent menu.
    If Me.ParentItemIsVisible = True Then
    ParentItem.Visible = True

    Else
       ParentItem.Visible = False
    End If

    ' Check the "EnableItem1" custom Boolean property to decide which menu item to enable. 
    ' within the parent item.
    If Me.EnableItem1 = True Then
       Item1.Enabled = True
       Item2.Enabled = False

    Else
       Item1.Enabled = False
       Item2.Enabled = True
    End If
End Sub
public override void CreateWebPartMenu()
{
    // Declare variables for menu items.
    MenuItem ParentItem;
    MenuItem Item1;
    MenuItem Item2;

    // Create three menu items:
    // One parent item, and two submenu items.

    // Create the parent item.
    ParentItem = new MenuItem("ParentItem", "", "ParentItemID");

    // Create a submenu item with a server event on click.
    Item1 = new MenuItem("Item1", "Item1ID", new EventHandler(EventHandlerForItem1));

    // Create a submenu item with a client event on click. 
    Item2 = new MenuItem("Item2", "javascript:alert('Item2 was clicked.');", "Item2ID");

    // Add the submenu items to the parent item.
    ParentItem.MenuItems.Add(Item1);
    ParentItem.MenuItems.Add(Item2);

    // Add the parent item after the "Modify Shared/Personal Web Part"
    // command in the default menu. 

    // Retrieve the index of the "Modify Shared/Personal Web Part" command.
    int EditIndex = this.WebPartMenu.MenuItems.IndexOf(this.WebPartMenu.MenuItems.ItemFromID("MSOMenu_Edit"));

    // Insert the parent item after the "Modify Shared/Personal Web Part" command.
    this.WebPartMenu.MenuItems.Insert(EditIndex + 1, ParentItem); 

    // Add a separator above the parent item.
    ParentItem.BeginSection = true;

    // Check the "ParentItemIsVisible" custom Boolean property to decide whether to display the parent menu.
    if (this.ParentItemIsVisible == true)
    {
        ParentItem.Visible = true;
    }

    else
    {
        ParentItem.Visible = false;
    }

    // Check the "EnableItem1" custom Boolean property to decide which menu item to enable. 
    // within the parent item.
    if (this.EnableItem1 == true)
    {
        Item1.Enabled=true;
        Item2.Enabled=false;
    }

    else
    {
        Item1.Enabled=false;
        Item2.Enabled=true;
    }
}

另请参阅

引用

WebPart 类

WebPart 成员

Microsoft.SharePoint.WebPartPages 命名空间