Скройте / отключите / удалите / снимите ленту в Face Office 2007 программно

Мы встраиваем элемент управления Word в приложение winforms, и нам нужно скрыть и отключить ленту в Office 2007 и 2010.

Можно ли программно скрыть / отключить ленту office 2007/2010 с помощью dll взаимодействия с офисом? Есть ли другой способ сделать это?


person Zachary Yates    schedule 06.10.2010    source источник


Ответы (3)


Я не думаю, что вы можете отключить ленту как таковую, но с помощью специального XML-файла вы можете скрыть вкладки, группы и команды по умолчанию (или добавить свои собственные). Настроить собственный XML-файл можно через взаимодействие (см. IRibbonExtensibility и GetCustomUI). Возможно, это не идеально, но, возможно, лучше, чем ничего.

person Tom Juergens    schedule 06.10.2010
comment
О, и еще одна мысль: вы можете вообще не встраивать Word, а вместо этого использовать автономную замену без множества зависимостей - такую ​​как TxTextControl. Это будет серьезное изменение, которое, очевидно, зависит от ваших намерений и требований, поэтому в вашем случае это может не быть решением. - person Tom Juergens; 07.10.2010
comment
Собственно, сегодня мы пытаемся убедить клиента в этом. - person Zachary Yates; 07.10.2010

Отключить ленту Office 2007/2010 невозможно.

person user7116    schedule 06.10.2010
comment
Не уверен, почему голосование против, нет возможности отключить ленту. Вы можете скрыть вкладки и т. Д., Но пользователь всегда может вернуть их обратно. - person user7116; 07.10.2010
comment
Да, раздражает, когда люди голосуют против, не оставляя комментариев о причине. - person Tom Juergens; 08.10.2010

В пользовательском интерфейсе Ctrl F1 выполнит скрытие.

Если бы вы могли отправлять ключи во встроенное приложение, это было бы сделано.

System.Windows.Forms.SendKeys.Send("^{F1}");

Подробнее об SendKeys в MSDN.

person p.campbell    schedule 06.10.2010
comment
Мы пробовали Ctrl + F1, но нам нужно отключить эту функцию, потому что пользователь может нажать ее еще раз, чтобы переключить ее. - person Zachary Yates; 06.10.2010