Поскольку VS2010 при импорте первичных сборщиков Office (PIA), механизм по умолчанию для включения определений типов заключается в том, чтобы вставлять их как часть основной сборки, а не как библиотеки с отдельными ссылками (Dll). Часть этого процесса внедрения заключается в удалении элементов из списка без ссылок из встроенного определения.
В Обозревателе решений разверните узел Ссылки и выберите Interop.Microsoft.Office.Interop.Excel
, а затем щелкните правой кнопкой мыши) -> Показать свойства. Вы должны увидеть что-то вроде этого:
Измените «Вставить типы взаимодействия» на false, убедитесь, что «Копировать локальную» также автоматически изменилось на «Истина». Сделайте то же самое для «Interop.Microsoft.Office.Core» и «Interop.VBIDE».
Теперь, когда вы отражаете типы взаимодействия управляемого обертки, вы получите полное определение типа.
'Microsoft.Office.Interop.Excel' - все COM-объекты. Это может быть очень странно, когда дело доходит до размышлений. Что вы пытаетесь сделать, чтобы получить свойства объекта Range - это решение вашей проблемы? –
@ScottChamberlain Я стремился к инструменту, который отображал бы свойства объектов Excel (а не Range), а использование отражения для получения списка свойств казалось наименее трудоемким. Но я потратил довольно много времени, пытаясь найти ответ онлайн, почему нет typeof (Excel.Range) .GetProperties() возвращает список свойств. – Roman