Объект ISEMenuItem является экземпляром класса Microsoft.PowerShell.Host.ISE.ISEMenuItem. Все объекты пунктов меню "Надстройки" принадлежат к классу Microsoft.PowerShell.Host.ISE.ISEMenuItem.

Свойства

DisplayName

Это свойство доступно только для чтения. Оно возвращает имя пункта меню.

# Get the display name of the Add-ons menu item
$psISE.CurrentPowerShellTab.AddOnsMenu.SubMenus.Clear()
$psISE.CurrentPowerShellTab.AddOnsMenu.SubMenus.Add("_Process",{get-process},"Alt+P")
$psISE.CurrentPowerShellTab.AddOnsMenu.DisplayName

Action

Это свойство доступно только для чтения. Оно возвращает скрипт (или блок), вызываемый при выборе этого пункта меню.

# Get the action associated with the first submenu item.
$psISE.CurrentPowerShellTab.AddOnsMenu.SubMenus.Clear()
$psISE.CurrentPowerShellTab.AddOnsMenu.SubMenus.Add("_Process",{get-process},"Alt+P")
$psISE.CurrentPowerShellTab.AddOnsMenu.Submenus[0].Action
# Invoke the script associated with the first submenu item (Note the “.” At the beginning of the command).
# Invoke the action
$psISE.CurrentPowerShellTab.AddOnsMenu.Submenus[0].Action.Invoke()

Shortcut

Это свойство доступно только для чтения. Оно возвращает сочетание клавиш Windows для этого пункта меню.

# Get the shortcut for the first submenu item.
$psISE.CurrentPowerShellTab.AddOnsMenu.SubMenus.Clear()
$psISE.CurrentPowerShellTab.AddOnsMenu.SubMenus.Add("_Process",{get-process},"Alt+P")
$psISE.CurrentPowerShellTab.AddOnsMenu.Submenus[0].Shortcut

Submenus

Это свойство доступно только для чтения. Оно возвращает список пунктов вложенного меню этого пункта меню.

# List the submenus of the Add-ons menu
$psISE.CurrentPowerShellTab.AddOnsMenu.SubMenus.Clear()
$psISE.CurrentPowerShellTab.AddOnsMenu.SubMenus.Add("_Process",{get-process},"Alt+P")
$psISE.CurrentPowerShellTab.AddOnsMenu.Submenus

Пример создания скрипта

Этот пример создания скрипта поможет ознакомиться с принципами использования меню "Надстройки" и его свойств, используемых в скриптах.

# This is a scripting example that shows the use of the Add-ons menu.
# Clear the Add-ons menu if one exists
$psISE.CurrentPowerShellTab.AddOnsMenu.SubMenus.Clear()
# Add an Add-ons menu with an accessor.
# Note the use of “_”  as opposed to the “&” for mapping to the fast key letter for the menu item.
$menuAdded = $psISE.CurrentPowerShellTab.AddOnsMenu.SubMenus.Add("_Process",{get-process},"Alt+P") 
# Add a nested menu. 
$parentAdded = $psISE.CurrentPowerShellTab.AddOnsMenu.SubMenus.Add("Parent",$null,$null) 
$parentAdded.SubMenus.Add("_Dir",{dir},"Ctrl+Shift+D")

См. также