Невозможно добавить действия к пользовательским кнопкам во всплывающем меню «Текст» - PullRequest
0 голосов
/ 03 февраля 2010

Мне очень тяжело было следующее. Я использую Visual Studio 2010 Beta, разрабатываю шаблон слов (.dotm) в Visual Basic.Net

Я пытаюсь добавить свои собственные кнопки в текстовое всплывающее / контекстное меню слова. Однако, если я использую свойство .OnAction, я получаю сообщение об ошибке в слове, в котором говорится следующее:

Макрос не найден или был отключен из-за настроек безопасности макроса

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

Я попробовал другой подход, который представляет собой WithEvents, однако он связывает событие с кнопкой LAST, которую я добавляю в меню.

Третий подход, который я попробовал, был AddHandler, который запускается один раз, потом не более.

Вот код, который я использую:

For Each myItem In activeDoc.CommandBars
        If myItem.Type = Microsoft.Office.Core.MsoBarType.msoBarTypePopup And myItem.Name = officeMenuName Then
            shortMenu = Me.activeDoc.CommandBars(myItem.Index).Controls
            shortPopup = shortMenu.Add(Type:=Office.MsoControlType.msoControlPopup, Temporary:=True)

            With shortPopup
                .Caption = menuName
                .Visible = True
            End With

            For i = LBound(menuItems) To UBound(menuItems)

                shortItem = shortPopup.Controls.Add(Type:=Office.MsoControlType.msoControlButton, Temporary:=True)
                AddHandler shortItem.Click, AddressOf shortMenuNu

                With shortItem
                    .Caption = menuHeader(i)
                    .Visible = True
                    .Tag = menuItems(i)

                    .OnAction = "shortMenuItem_Click" 'where the name of the sub resides in the same class
                    'or AddHandler shortItem.Click, AddressOf shortMenuItem_Click
                End With

                shortItem = Nothing
            Next
        End If
    Next  

Буду признателен за любую информацию по этому вопросу.

Есть идеи?

1 Ответ

0 голосов
/ 04 февраля 2010

У меня просто были те же симптомы. В моем случае для элемента управления CommandBar был определен OnAction, содержащий элемент управления ComandBarPopup. Нет никаких действий над элементом управления.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...