C# 使用C在PowerPoint演示文稿中自动播放电影#

C# 使用C在PowerPoint演示文稿中自动播放电影#,c#,.net,powerpoint,office-automation,C#,.net,Powerpoint,Office Automation,我目前正试图通过C#和Microsoft.Office.Interop.PowerPoint更改.pptx文件中的一些设置。我在演示文稿的几个幻灯片上链接了一些.wmv电影。创建演示文稿时,所有电影都会在单击后立即播放。但是,我想将其更改为在观看幻灯片后立即开始自动播放。这需要对很多演示文稿执行,因此无法手动执行 我找到了PlaySettings.playonetry属性,但我不知道如何使用它。我找到了几个例子,说明如何将一部新电影嵌入其中(然后,仅针对Visual Basic),但由于电影已经

我目前正试图通过C#和Microsoft.Office.Interop.PowerPoint更改.pptx文件中的一些设置。我在演示文稿的几个幻灯片上链接了一些.wmv电影。创建演示文稿时,所有电影都会在单击后立即播放。但是,我想将其更改为在观看幻灯片后立即开始自动播放。这需要对很多演示文稿执行,因此无法手动执行

我找到了
PlaySettings.playonetry
属性,但我不知道如何使用它。我找到了几个例子,说明如何将一部新电影嵌入其中(然后,仅针对Visual Basic),但由于电影已经嵌入,这不是我想要的


我也不知道如何访问当前幻灯片上的任何对象,也许有一种方法可以检查形状是否是视频文件,然后更改上述设置,但MSDN参考对Office主题没有太大帮助。如果有必要的话,我正在使用Powerpoint 2007和Visual Studio 2010。

明白了。搜索演示文稿的所有形状并过滤出电影作品:

//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;
    }
   }

明白了。搜索演示文稿的所有形状并过滤出电影作品:

//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;
    }
   }

@Lennart的解决方案是其中的一部分,然后您需要一个页面触发器

var videoAnimation = slide.TimeLine.MainSequence.FindFirstAnimationFor(objShapes);
if (videoAnimation != null)
{
    videoAnimation.Timing.TriggerType = PowerPoint.MsoAnimTriggerType.msoAnimTriggerWithPrevious;
}

@Lennart的解决方案是其中的一部分,然后您需要一个页面触发器

var videoAnimation = slide.TimeLine.MainSequence.FindFirstAnimationFor(objShapes);
if (videoAnimation != null)
{
    videoAnimation.Timing.TriggerType = PowerPoint.MsoAnimTriggerType.msoAnimTriggerWithPrevious;
}

很高兴听到它被分类了。您可以通过单击此答案上向上/向下箭头旁边的空心复选标记来接受自己的答案。如果有机会,请抓住机会阅读常见问题解答。很高兴听到它已分类。您可以通过单击此答案上向上/向下箭头旁边的空心复选标记来接受自己的答案。如果有机会,请抓住机会阅读常见问题解答@。