Pull to refresh

Comments 11

Неужели нет более простого способа получить доступ к Excel.Application в классе SampleRibbon? Все-таки эта панель — часть Excel Add-ins.
На самом деле я сам был удивлен. Если посмотреть доку на MSDN, там есть подозрительные свойства Context, Parent и Tag, но лично у меня во время выполнения они все время были равны null.
С другой стороны, это может быть пинком в сторону неких Best Practices, поскольку у меня в результате получились что-то вроде MVP, что само по себе неплохо.
Я бы посоветова почитать книгу VSTO 3.0 for Microsoft Office programming. Хотя текущая версия под MS Office 2010, который на скриншотах, уже 4.0.
Visual Studio Tools for Office значительно удобнее для создания надстроек, чем COM. А за статью спасибо!
Спасибо за рекомендацию, почитаю обязательно!
Кстати, я вот может путаюсь в терминологии, но как я понимаю, VSTO — это как раз-таки инфраструктура для создания надстроек под .NET + боекомплект PIA для взаимодействия с COM-компонентами офиса. В смысле, что надстройка не создается целиком как COM-компонент, но от взаимодействия с COM мы все равно никуда не уходим?
да, сам некогда ковырял VSTO для вывода фото человека и инфы в Outlook 2007.
Инфа бралась из Exchange Server 2008.

Да «вменяемых русскоязычных туториалов» действительно не было.
Но штука класная, особенно в условиях корпоративного мира.

А как Вы устанавливали Add-in? политиками?
Да, штука действительно неплохая, мне тоже понравилось.
Нет, вручную, т.к. там машин, на которых это добро надо было развернуть, было совсем немного.
у меня не появляется ribbon (даже при использовании CreateRibbonExtensibilityObject) и виснет студия, сначала спрашивает копировать ли pfx файл — и при любом ответе зависает.
Все разобрался, похожу проблема в том, что проект находился не на диске c:
оказалось с этим не связано, в чем причина пока не понятно. сборка не подгружается из студии (запускается пустой эксель — в списке COM модулей модуля проекта нет). После третьего запуска студия намертво виснет.
В общем помогла очистка решения и построения заново (странно — так как я пробовал на двух новых проектах и везхде были проблемы с запуском dll из студии.
Я конечно тот еще некроман, публикую комментарий к посту 5и летней давности, но все же:
На данный момент доступ к экземпляру класса Application возможен через Globals.ThisAddIn.Application

p.s. в свое время оставлял в закладках ссылку на вашу статью, вот сейчас наступил тот случай, когда она пригодилась
Sign up to leave a comment.

Articles