Мне нужно разместить электронную таблицу Excel в нашем приложении WinForms.Похоже, загрузка файла Excel в элемент управления WebBrowser - это то, что нужно.В интернете есть несколько статей на эту тему.Тем не менее, они в основном используют Excel 2003 (я думаю).В Excel 2007 появилось несколько новых проблем:
По умолчанию электронная таблица Excel открывается в новом окне, а не встраивается в мой элемент управления WebBrowser.Основываясь на Microsoft, это сделано по замыслу, но оно также предлагает исправление путем изменения настроек реестра.Это не очень хорошо, но я, вероятно, могу с этим смириться.
С этим изменением реестра я смог встроить электронную таблицу Excel в свой элемент управления WebBrowser.Тем не менее, книга Excel по-прежнему открыта в фоновом режиме, которую я даже не могу закрыть, но она закрывается автоматически, когда мое приложение WinForm закрывается.Интересно наблюдать, как загружается электронная таблица: сначала она загружается в книгу Excel (в фоновом режиме), а затем переносится в мой элемент управления WebBrowser.Как я могу избавиться (или скрыть) это фоновое окно?РЕДАКТИРОВАТЬ: На самом деле, окно Excel не закрывается, но помещается в фоновом режиме.Однако с помощью этой статьи в CodeProject ее можно закрыть.В этой статье окно Excel закрывается при закрытии WinApp.Но эту же функцию можно использовать для закрытия этого окна в событии DocumentBompleted WebBrowser.Это не идеально, потому что вы все еще видите вспышку экрана, но все в порядке.Я хотел бы, чтобы был лучший способ сделать это.Чтобы избежать мигания экрана, я старался просто свернуть окно Excel.Однако, когда я пытаюсь установить WindowState в Minimized, он генерирует исключение COM.Любая подсказка?Было бы лучше, если бы я мог скрыть это отключенное окно с самого начала.
Когда вы открываете электронную таблицу в первый раз, появляется окно с сообщением, запрашивающим варианты «Открыть», «Сохранить »и« Отмена ».Есть флажок для его отключения.Но я не хочу, чтобы это сообщение появлялось.Какой параметр реестра для этого?
В моей электронной таблице есть дополнительный компонент, который должен загружаться динамически.Однако загрузка его в WebBrowser не работает (он не может его найти).Если я активирую надстройку, она загружается без проблем.Есть ли что-то в WebBrowser, которое нужно изменить, чтобы оно работало?
Есть ли лучшие альтернативы для размещения электронной таблицы Excel в приложении WinForms?