Excel VSTO -> Скрыть / Показать кнопку ленты на основе другого нажатия кнопки ленты - PullRequest
3 голосов
/ 07 апреля 2010

Мы создаем Excel 2007 AddIn, используя VSTO. Теперь у нас есть сценарий, где есть 2 кнопки. Кнопка «А» и кнопка «В». Кнопка «B» должна быть скрыта на основании нажатия кнопки «A».

Но так как панель ленты не обновляется динамически, мы не можем увидеть изменения на панели ленты.

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

Не могли бы вы объяснить и поместить фрагмент кода о том, как это сделать?

Буду очень признателен, если кто-нибудь может помочь как можно скорее ...

Ответы [ 2 ]

0 голосов
/ 11 октября 2010

Два замечания:

1) чтобы «принудительно» обновить ленту, можно вызвать ribbon.Invalidate (); Это может быть полезно, если вам нужно программно включить / отключить кнопки или другие элементы.

2) динамическое скрытие / отображение кнопок на ленте противоречит Руководству по пользовательскому интерфейсу ленты , которое вы должны соблюдать. Я не уверен, применимо ли это к надстройкам Office (или только к автономным приложениям), но я был бы удивлен, если это не так. Вы можете прочитать больше здесь: http://msdn.microsoft.com/en-us/office/aa973809.aspx

0 голосов
/ 07 апреля 2010

Извините, что задаю такой глупый и простой вопрос ...

Шаг 1: Сделать кнопку «B» видимой Ложь Шаг 2: при событии Click на кнопке «A» сделать его видимым true.

Я запутался, прочитав слишком много ... и сделал простой вопрос сложным.

...