Добавление COM-объектов на форму

KaPrAL666
Дата: 12.04.2010 20:26:26
Добрый день! Имеется COM-объект PivotTable из OWC11:
 
Dim PT As Microsoft.Office.Interop.Owc11.PivotTable = New Microsoft.Office.Interop.Owc11.PivotTable

Как добавить созданный эксемпляр PT на форму? Нечто вроде Me.Add("PT"), но по-другому.
KaPrAL666
Дата: 12.04.2010 21:10:58
Если сделать
Response.Write(PTable.HTMLData)
, то на форме появится только часть PivotTable, а точнее, фраза: "Сводная таблица Microsoft Office 11.0". Есть мысли?
qu-qu
Дата: 13.04.2010 17:02:07
KaPrAL666,

Как серверный ASP.NET-контрол не добавить никак...
Как обычный тег <object>, который будет исполняться в клиентском процессе браузера, - всегда пожалуйста, только при этом придется забыть про все браузеры, кроме IE.
ShSerge
Дата: 13.04.2010 17:05:56
qu-qu
KaPrAL666,

Как серверный ASP.NET-контрол не добавить никак...
Как обычный тег <object>, который будет исполняться в клиентском процессе браузера, - всегда пожалуйста, только при этом придется забыть про все браузеры, кроме IE.

Ага. Причём, если у клиента эта штука установлена (мс оффис тоесть).
KaPrAL666
Дата: 13.04.2010 20:12:05
Если PivotTable реализуется тегом <object>, то можно ли как-нибудь по-другому обращаться с XMLData, кроме как скриптом в скрипте:
Response.Write("<script> var strXML = document.all.PivTable.XMLData </script>")
Может есть способ сохранить XMLData в переменную в коде?
qu-qu
Дата: 14.04.2010 10:34:08
KaPrAL666
Если PivotTable реализуется тегом <object>, то можно ли как-нибудь по-другому обращаться с XMLData, кроме как скриптом в скрипте:
Response.Write("<script> var strXML = document.all.PivTable.XMLData </script>")
Может есть способ сохранить XMLData в переменную в коде?

В серверном коде - вряд ли...

Можно попытаться добавить тегу <object> атрибуты ID и runat="server", и посмотреть - что из этого получится (я так никогда не делал, а проверять самому нет времени).

В клиентском javascript - всегда пожалуйста, можно и вытащить XMLData, и запостить его ajax-ом обратно на сервер, и считать тем же ajax-ом из какой-нить сессионной переменной на сервере, тут фантазия - безгранична (в пределах возможностей javascript).

З.Ы. я когда-то делал такие "трюки" как сохранение пользователем "настроек отчета" (источник данных/столбцы/строки/группировки/суммы/форматы/раскраска - все же это записано в XMLData) под удобным для него именем в БД, а потом - извлечение нужного "отчета" по выбору из дропдауна.