Skip to content

AutoHideUnusedPopups Property

Description

The AutoHideUnusedPopups property specifies whether unused popups will be hidden (i.e., an infrequently used menu).

Property Type

Read-write property

Syntax (Visual Basic)

Public Property AutoHideUnusedPopups() As Boolean

Remarks

When AutoHideUnusedPopups is TRUE, the popup menus behave similarly to the Windows Start menu. If all controls in a popup control are hidden, then the entire popup control will be hidden as well.

When AutoHideUnusedPopups is FALSE, the popup control will always be displayed, even if all controls in the popup menu are hidden.

Note: AlwaysShowFullMenus must be FALSE for hidden commands to be hidden.

The picture below illustrates how the popup menu initially looks before the "Show More Buttons" button is clicked and what the popup menu looks like after the "Show More Buttons" button is clicked. The "New", "Open", "Add Project", and "Source Control" popups contain only hidden controls, so the entire popup menu was initially hidden. The example code below demonstrates how to create the menu in the picture.

Auto Hide Unused Popups

Example

This code demonstrates how to recreate the popup menu in the picture above.

Adding Hidden Controls (Visual Basic)

This sample illustrates how to add hidden controls to the popup menus. This also demonstrates how to hide popup menus that only contain hidden commands.

Dim Control As CommandBarControl, ControlFile As CommandBarPopup  
Dim ControlNew As CommandBarPopup, ControlOpen As CommandBarPopup  
Dim ControlAddNew As CommandBarPopup, ControlSourceControl As CommandBarPopup  

' Adds the "File" popup menu to the menu bar  
Set ControlFile = CommandBars.ActiveMenuBar.Controls.Add(xtpControlPopup, 0, "&File")  
With ControlFile.CommandBar.Controls  
    Set ControlNew = .Add(xtpControlPopup, 0, "New")  
    With ControlNew.CommandBar.Controls  
        .Add xtpControlButton, ID_FILE_NEW_PROJECT, "New Project..."  
        .Add xtpControlButton, ID_FILE_NEW_FILE, "New File..."  
        .Add xtpControlButton, ID_FILE_NEW_BLANK, "Blank Solution"  
    End With  

    Set ControlOpen = .Add(xtpControlPopup, 0, "Open")  
    With ControlOpen.CommandBar.Controls  
        .Add xtpControlButton, ID_FILE_OPEN_PROJECT, "Open Project"  
        Set Control = ControlOpen.CommandBar.Controls.Add(xtpControlButton, ID_FILE_OPEN_FILE, "Open File...")  
    End With  

    .Add xtpControlButton, ID_FILE_CLOSE, "&Close"  

    Set ControlAddNew = .Add(xtpControlPopup, 0, "A&dd Project")  
    ControlAddNew.BeginGroup = True  
    With ControlAddNew.CommandBar.Controls  
        .Add xtpControlButton, ID_FILE_NEW_PROJECT, "&New Project..."  
        .Add xtpControlButton, ID_FILE_EXISTING_PROJECT, "&Existing Project..."  
        .Add xtpControlButton, ID_FILE_EXISTING_WEB_PROJECT, "Existing Project &From Web..."  
    End With  

    Set Control = .Add(xtpControlButton, ID_FILE_OPEN_SOLUTION, "Op&en Solution...")  
    Control.BeginGroup = True  
    Set Control = .Add(xtpControlButton, ID_FILE_CLOSE_SOLUTION, "Close Solu&tion...")  
    Control.Enabled = False  

    Set Control = .Add(xtpControlButton, ID_FILE_SAVE, "&Save Selected Items")  
    Control.BeginGroup = True  
    Control.Enabled = False  
    .Add xtpControlButton, ID_FILE_SAVE_AS, "Save Selected Items &As..."  
    .Add xtpControlButton, ID_FILE_SAVE_ALL, "Save A&ll"  

    Set ControlSourceControl = .Add(xtpControlPopup, 0, "Sou&rce Control")  
    ControlSourceControl.BeginGroup = True  
    With ControlSourceControl.CommandBar.Controls  
        .Add xtpControlButton, ID_FILE_GET_LATEST_VERSION, "Get Latest Version"  
        .Add xtpControlButton, ID_FILE_GET, "Get..."  
        .Add xtpControlButton, ID_FILE_CHECK_OUT, "Check Out..."  
        .Add xtpControlButton, ID_FILE_CHECK_IN, "Check In..."  
        .Add xtpControlButton, ID_FILE_HISTORY, "&History..."  
    End With  

    Set Control = .Add(xtpControlButton, ID_FILE_PRINT_SETUP, "Print Set&up...")  
    Control.Enabled = False  
    Control.BeginGroup = True  
    Set Control = .Add(xtpControlButton, ID_FILE_PRINT, "Print...")  

    Set Control = .Add(xtpControlButton, ID_FILE_EXIT, "&Exit")  
    Control.BeginGroup = True  
End With  

' Specifies that these controls will be hidden  
CommandBars.Options.AddHiddenCommand ID_FILE_NEW_PROJECT  
CommandBars.Options.AddHiddenCommand ID_FILE_NEW_FILE  
CommandBars.Options.AddHiddenCommand ID_FILE_NEW_BLANK  
CommandBars.Options.AddHiddenCommand ID_FILE_OPEN_PROJECT  
CommandBars.Options.AddHiddenCommand ID_FILE_OPEN_FILE  
CommandBars.Options.AddHiddenCommand ID_FILE_NEW_PROJECT  
CommandBars.Options.AddHiddenCommand ID_FILE_EXISTING_PROJECT  
CommandBars.Options.AddHiddenCommand ID_FILE_EXISTING_WEB_PROJECT  
CommandBars.Options.AddHiddenCommand ID_FILE_GET_LATEST_VERSION  
CommandBars.Options.AddHiddenCommand ID_FILE_GET  
CommandBars.Options.AddHiddenCommand ID_FILE_CHECK_OUT  
CommandBars.Options.AddHiddenCommand ID_FILE_CHECK_IN  
CommandBars.Options.AddHiddenCommand ID_FILE_HISTORY  
CommandBars.Options.AddHiddenCommand ID_FILE_PRINT_SETUP  

' Indicates that hidden commands will not initially be displayed in popup menus  
CommandBars.Options.AlwaysShowFullMenus = False  

' Indicates that popup menus that contain only hidden commands will be hidden as well  
CommandBars.Options.AutoHideUnusedPopups = True

See Also


Copyright (c) 1998-2024 Codejock Technologies. All rights reserved.