Интересно, что в моем проекте VSTO Contrib (http://vstocontrib.codeplex.com/documentation) есть некоторые функции, упрощающие управление лентами.
Самый простой способ - использовать мою фабрику лент, но необходимо будет обновить проект, чтобы отключить кнопки, если нет моделей просмотра для запроса статуса кнопки. На самом деле это сценарий, который я действительно не раскрыл.
У вас есть 3 части, которые интересует надстройка: вид (окно), контекст (документ) и лента. VSTO Contrib означает, что вы получаете модель представления для каждого контекста, и она управляет / абстрагирует ленту и представление, так что кажется, что у вас есть лента для каждого контекста, и она сообщает вам текущее активное представление (для нескольких окон, в которых отображаются одни и те же сценарии документа).
Отсутствует часть, если есть лента, но нет контекстов и моделей представления, она должна аннулировать этот элемент управления ленты и отключить его. Это должно быть довольно простое изменение, напишите мне, если вы заинтересованы в том, чтобы VSTO Contrib's RibbonFactory раскрутился, и я могу сделать это изменение для вас.