Вставить PowerPoint Viewer в C # Win Form - PullRequest
12 голосов
/ 11 августа 2009

Можно ли встроить средство просмотра PowerPoint в форму C # Windows?

В настоящее время я использую следующий код:

objApp = new PowerPoint.Application();
        //objApp.Visible = MsoTriState.msoTrue;
        objPresSet = objApp.Presentations;
        objPres = objPresSet.Open(ppsAction.FileInfo.FullName, MsoTriState.msoTrue, MsoTriState.msoTrue, MsoTriState.msoFalse);
        objSlides = objPres.Slides;

        //Run the Slide show
        objSSS = objPres.SlideShowSettings;
        objSSS.ShowType = Microsoft.Office.Interop.PowerPoint.PpSlideShowType.ppShowTypeSpeaker;
        objSSS.LoopUntilStopped = MsoTriState.msoTrue;
        objSSS.Run();

        WindowWrapper handleWrapper = new WindowWrapper(objPres.SlideShowWindow.HWND);
        SetParent(handleWrapper.Handle, this.ApplicationPanel.Handle);
        this.ApplicationPanel.Visible = true;
        objPres.SlideShowWindow.Height = ApplicationPanel.Height;
        objPres.SlideShowWindow.Width = ApplicationPanel.Width;
        objPres.SlideShowWindow.Top = 0;
        objPres.SlideShowWindow.Left = 0;

Показывает зрителя на форме, но размещение и размеры неверны. Как бы один размер и правильно его разместить.

Другой вариант :
Я столкнулся с приложением Aximp.exe, предназначенным для отображения элементов управления ActiveX на Win Forms в C #. Как бы я использовал это с PPT Viewer?

Ответы [ 3 ]

4 голосов
/ 11 августа 2009

См. эту ссылку. Вы также можете отобразить ppt в элементе управления WebBrowser. Это также может быть полезно.

1 голос
/ 05 октября 2012

Для размещения измените objPres.SlideShowWindow.Top на 10 в качестве примера и objPres.SlideShowWindow.Left на 12, чтобы верхний левый угол слайда находился в точке (12,10), где левый переместил его в горизонтальное положение, а верхний переместил в вертикальном направлении. 1003 *

1 голос
/ 24 марта 2010

Спасибо за хорошие ссылки, http://support.microsoft.com/kb/304662 имеет полезную информацию ... Это помогло мне:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...