2008-10-20 12 views
9

¿Hay alguna buena manera de usar una aplicación de Windows escrita en C# para mostrar/controlar una presentación de PowerPoint? En última instancia, me gustaría mostrar las miniaturas en un formulario y hacer clic en estas miniaturas avanzaría las diapositivas que se muestran en un segundo monitor (similar al uso de Powerpoint para mostrar una presentación de diapositivas en un segundo monitor).Uso de C# para mostrar el punto de energía

Me gustaría poder utilizar Powerpoint Viewer si Powerpoint no está instalado.

Parece haber algunos controles ActiveX que permiten la integración de Powerpoint en un formulario, pero la mayoría de estos parecen costar dinero, ¿alguien tiene experiencia en el uso de uno de estos controles?

Editar: Sé que hay un modelo de objeto accesible al agregar una referencia a Microsoft.Office.InterOp.Powerpoint, pero quiero poder distribuir el programa resultante sin tener Microsoft Office como requisito previo, por eso Mencioné Powerpoint Viewer porque se puede distribuir libremente.

Respuesta

7

Este kb establece los conceptos básicos para trabajar con el modelo de objetos del visor de presentaciones de PowerPoint. Sugeriría que incluyeras el visor cuando distribuyas tu aplicación.

http://support.microsoft.com/kb/265385

Una vez que obtenga una referencia para el espectador (nivel superior) objetar que es básicamente el mismo que trabajar con el modelo de objetos powerpoint.presentation, pero con menos funcionalidad (es decir, la edición, etc.)

Si está trabajando con Powerpoint 2007, puede agregar funcionalidad de edición utilizando System.XML y espacios de nombres relacionados para trabajar con el archivo de presentación como un archivo xml abierto.

En cuanto a los comentarios sobre UNO/openoffice.org, creo que estos pierden el sentido, ya que no se puede usar UNO para trabajar con powerpoint, es para openoffice y ese no era el requisito original del interrogador.

hay conjuntos de herramientas de terceros como Aspose, pero luego tu objetivo era trabajar con el componente del visor de PowerPoint (gratis), así que supongo que quieres evitar pagar las herramientas de desarrollo.De cualquier forma, los componentes del visor OM son perfectamente adecuados para mostrar y previsualizar y mostrar diapositivas existentes. (Necesitará una copia de Powerpoint para poder crear la presentación desde cero, más Visual Studio para crear el proyecto VSTO).

4

Uno de nuestros softwares aquí en el trabajo lo hace. Inicialmente usamos MS Office, pero recientemente cambiamos al uso OpenOffice.org Uno ya que ofrece un mejor control que MS Office y es más fácil trabajar con él. Tiene .NET CLI-bindings.

Para responder a su pregunta, sí se puede hacer, pero nuestros ingenieros le recomendarán usar OpenOffice.org en su lugar.

+0

Uno suena interesante, lo verificaré y le daré un voto positivo cuando tenga suficiente reputación ... – Berg

+0

Aquí tiene suficiente reputación de Berg :) –

1

Al igual que con Microsoft Excel y Word, PowerPoint tiene un modelo de objetos que se puede acceder en el código mediante la inclusión de una referencia en su proyecto a:

Microsoft.Office.Interop.PowerPoint.

He usado los modelos de Excel y Word, pero no he usado el de Powerpoint. Puede obtener un poco de lo que está disponible abriendo el Examinador de objetos una vez que haya incluido la referencia para ver qué tipo de funcionalidad está disponible. Esta podría ser una solución viable para usted si no desea utilizar una herramienta de terceros para acceder al modelo de objetos.

+0

Conocía el modelo de objetos pero requiere que esté instalado Powerpoint, le gustaría poder distribuir el programa sin tener Office como un requisito previo. – Berg

+0

por favor lea la pregunta antes de responder ... –

Cuestiones relacionadas