如何以编程方式在SlideMaster和默认视图之间切换?

时间:2013-04-08 21:32:53

标签: c# vsto powerpoint

我需要通过按钮单击选择主要父幻灯片切换SlideMaster模式。 此外,我需要返回默认模式并选择此模式幻灯片中的最后一个选择。

有人知道怎么做(对于PP2007 / PP2010 / PP2013)?

由于

2 个答案:

答案 0 :(得分:0)

我会以这种方式在VBA中这样做:

Sub Switch_To_Slidemaster()

Dim curSLD As Long
    curSLD = ActiveWindow.View.Slide.SlideIndex

'switch to SlideMaster
Application.Windows(1).ViewType = ppViewSlideMaster


'return to default
Application.Windows(1).ViewType = ppViewNormal

'set slide
ActiveWindow.Presentation.Slides(curSLD).Select

End Sub

我希望你能应对转换。 (经过PP 2010测试)

答案 1 :(得分:0)

我已经在PP2007,PP2010,PP2013中测试了这个代码并且它可以工作。

private int _slideIndexInDefaultView;

private void ButtonNormalView_Click(object sender, RibbonControlEventArgs e)
    {
        // Default view
        Globals.AddIn.Application.Windows[1].ViewType = Microsoft.Office.Interop.PowerPoint.PpViewType.ppViewNormal;
        Globals.AddIn.Application.ActiveWindow.Presentation.Slides[_slideIndexInDefaultView].Select();
    }

    private void ButtonSlideMasterView_Click(object sender, RibbonControlEventArgs e)
    {
        // Slide master view
        _slideIndexInDefaultView = Globals.AddIn.Application.ActiveWindow.View.Slide.SlideIndex;
        Globals.AddIn.Application.Windows[1].ViewType = Microsoft.Office.Interop.PowerPoint.PpViewType.ppViewSlideMaster;
    }