2012-05-15 4 views
1

Есть ли хорошие образцы использования Microsoft Excel в качестве элемента управления сеткой в ​​типичном приложении C# для winform.Как использовать Microsoft Excel в качестве элемента управления сеткой в ​​winforms C#?

Я встречал много нитей говорят о первенствует «как» контроль или сетки управления с функциональностью, аналогичной Excel и т.д.

Почему бы не использовать первенствует в качестве контроля GRID, он имеет все лакомства в сборке (формула двигателя, сортировка, фильтрация и т. д.)

ответ

0

Насколько я знаю, нет элементов управления .NET для встраивания приложений Office.

Раньше вы могли использовать DSOFramer для достижения того, чего хотите, но затем оно было прекращено. Я считаю, что это все еще работает (я не уверен). Управление веб-браузером (COM) является альтернативой DSOFramer, но имеет свои недостатки. Например, вы не можете использовать встроенные «Плюсы».

ниже только мое личное мнение

Я сомневаюсь, что MS никогда не поддерживают встроенные офисные приложения и причина очень проста. Приложения MS-Office - это продукты с конечным пользователем. Вам нужны отдельные лицензии для этого и с точки зрения бизнеса, которые они не хотели бы потерять на этом. Как я уже упоминал ранее, это только мои личные мысли и не отражают взгляды MS.

3

Вы, конечно, can host Excel как элемент управления в приложении WinForm, поэтому часть того, что вы хотите, возможно (с основными оговорками). Тем не менее, для подключения остальной функциональности, видимой во многих библиотеках сторонних сетей, требуется много работы, и у нее много подводных камней.

Главной причиной этого является то, что Excel является родным приложением Windows и не работает под инфраструктурой .Net. Следовательно, все манипуляции должны выполняться по длине оружия - вам нужно создать экземпляр приложения, создать экземпляр листа, попробовать и подписаться на определенные события (многие из которых могут быть недоступны, поскольку Excel был не предназначен для этой цели) , и, конечно же, старайтесь полностью управлять всеми COM-ссылками, чтобы избежать утечек памяти.

Элементы управления сеткой, о которых вы указали, были построены с нуля в качестве элементов управления, которые размещаются в приложениях .Net, и поэтому выставляют свойства и события вокруг типов взаимодействий стиля сетки, которые люди хотят - помните, Excel больше, чем сетка.

Однако, как если признать, что Excel может быть мощным инструментом, когда заемных средств программным способом, Microsoft при условии VSTO - среды выполнения, что позволяет разрабатывать Excel (и других офисных приложений) с использованием .Net