Pregunta

Actualmente estoy tratando de cambiar algunos ajustes en un .pptx a través de C # y Microsoft.Office.Interop.PowerPoint. Tengo algunas películas .wmv vinculados en varias diapositivas de la presentación. En el momento de las presentaciones fueron creadas, todas las películas jugar tan pronto como se hace clic. Sin embargo, quiero cambiar esto para empezar a reproducir automáticamente tan pronto como la diapositiva se ve. Esto esto tiene que ser hecho para una gran cantidad de presentaciones, así que no hay manera de hacer esto manualmente.

Me pareció la propiedad PlaySettings.PlayOnEntry, pero no puedo encontrar la manera de usarlo. He encontrado varios ejemplos de cómo hacer esto con una nueva película para ser integrado (y entonces, sólo para Visual Basic), pero ya que las películas ya están integrados, esto no es lo que quiero.

También tengo ni idea de lo que realmente puede tener acceso cualquier objeto en la diapositiva actual, tal vez hay una manera de comprobar si una forma es un archivo de vídeo y luego cambiar por encima de ajuste, pero el MSDN-referencia no es muy útil en la Oficina de Temas. Estoy usando Powerpoint 2007 y Visual Studio 2010 si lo que importa.

¿Fue útil?

Solución 2

Lo tengo. Buscando a través de todas las formas de la presentación y el filtrado de las obras películas:

//While iterating through all slides i:
   objShapes = objPres.Slides[i].Shapes;
    foreach (Microsoft.Office.Interop.PowerPoint.Shape s in objShapes) {
            if(s.Name.Contains(".wmv")){
            s.AnimationSettings.PlaySettings.PlayOnEntry = MsoTriState.msoTrue;
    }
   }

Otros consejos

@ solución de Lennart es parte de ella, este caso es necesario un disparador de la página

var videoAnimation = slide.TimeLine.MainSequence.FindFirstAnimationFor(objShapes);
if (videoAnimation != null)
{
    videoAnimation.Timing.TriggerType = PowerPoint.MsoAnimTriggerType.msoAnimTriggerWithPrevious;
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top