VSTO Office二次开发对PowerPoint功能简单测试

最近碰到使用VSTO技术对Office做插件开发的问题,发现网上的资源很少,大部分都是对于Word\Excel\Outlook的相关操作,发现不少是用VB语言写的VBA开发,对于PPT的操作不是很多,资源很少,还好MSDN还有一些资源可以查一下,但有些慢些了,简单给大家分享一下。使用的开发环境VS2010,运行程序office 2007

一、简单测试程序
1.创建PPT应用程序级外接程序(C#程序)
文件-》新建项目-》选择“Visual C#”-》选择“Office”-》选择“2010或2007”-》选择“PowerPoint 2007 外接程序”或“PowerPoint 2010 外接程序”(这里用的是2007测试的)-》设置名称、位置、解决方案名称,点击“确定”,则创建完毕。

2.简单测试:实现在每页PPT中显示文本
代码如下:

复制代码
//添加自定义文本信息
        private void AddText()
        {
            //事件委托绑定(对PPT中添加代码控制文本)
            this.Application.PresentationNewSlide += new PowerPoint.EApplication_PresentationNewSlideEventHandler(Application_PresentationNewSlide);
        }

        //此为Application对象的PresentationNewSlide事件
        //功能:当用户将新幻灯片添加到活动演示文稿时,此事件处理程序会将文本框添加到新幻灯片的顶部,然后向文本框中添加一些文本。
        void Application_PresentationNewSlide(PowerPoint.Slide Sld)
        {
            //这里的Application表示 PowerPoint 的当前实例。
            //这里的参数Sld,表示新幻灯片的Slide对象。
            PowerPoint.Shape textBox = Sld.Shapes.AddTextbox(Office.MsoTextOrientation.msoTextOrientationHorizontal, 0, 0, 500, 50);
            textBox.TextFrame.TextRange.InsertAfter("This Text Was Added By Using Code!");
        }

    private void ThisAddIn_Startup(object sender, System.EventArgs e)
        {
        //注意:在ThisAddIn_Startup中调用对应的方法,
            AddText();//添加自定义文本信息
        }
复制代码

3.运行程序查看效果
F5运行程序,查看效果。
会发现在打开一个office 2007的PPT文件都会有这个效果。查看一些PowerPoint选项左侧的“加载项”中就可以找到对应的加载项。
注意:有时候,没有对应的效果,可能是PPT的加载项中把你创建的COM加载项禁用了。只需要启用对应的加载项即可。
启用组件操作:在管理中选择“禁用项目”,点击“转到...”,会弹出禁用项目对话框,找到你的组件启用即可。
注意:如果不需要这些自己定义的组件功能,可以使用“清理”解决方案,将其移除。

 

二、简单自定义任务窗格
1.创建自定义窗格
在已创建的外接项目中右击解决方案添加新建项,选择“用户控件”,设置名称,点击添加,即创建一个用户控件。
用户控件很像是对于WinForm窗体的操作在工具箱中,拖拽你需要的按钮,实现对应的功能。
这里做一些简单的效果测试,加一个按钮,点击事件弹出"Hello TaskPanel!"
2.将创建的用户控件关联PPT组件
在“ThisAddIn.cs”文件中,添加如下代码:

复制代码
/// <summary>
        /// 添加自定义的Task Pane
        /// </summary>
        private void AddTaskPane()
        {
        //自定义用户控件名称(即自定任务窗格类)
            UCTaskPane taskPane = new UCTaskPane();
        //将用户控件添加到 CustomTaskPaneCollection集合中
            CustomTaskPane myCustomTaskPane  = this.CustomTaskPanes.Add(taskPane, "My Task Pane");
            myCustomTaskPane.Width = 200;//设置自定义任务窗格的宽度
            myCustomTaskPane.Visible = true;//设置其可见
        }
复制代码

在ThisAddIn_Startup中调用该方法。
3.运行程序查看效果
F5运行程序,查看效果。通常在右侧会出现自己创建的任务窗格,如果不加设定,它的位置是可以随便在边缘放置的顶部、底部、左侧、右侧。
注意:这里的任务窗格可以根据具体的业务需要在上面实现对应的功能;在一个组件中还可以创建多个任务窗格,一起使用。

 

三、简单可视化功能区使用
1.创建Ribbon可视化功能区 在已创建的外接项目中右击解决方案添加新建项,选择“功能区(可视化设计器)”,点击“添加”,即创建成功。
2.对于Ribbon功能区的简单使用 默认会创建一个tab页,如果不修改其Label将显示“加载项”,如果修改将显示你修改的信息内容。可以在工具箱中的Office功能区控件,选择你所需要的控件,也可以使用其他的一些控件。通常将这些控件放在一个Group容器中,形成简单的功能集合。(像是WinForm编程,拖拽控件实现对应的功能) 这里简单的测试一下,一个简单的Group容器,放一个Button按钮,实现其点击事件,弹出“Hello Ribbon!”。(也可以继续添加其他的控件测试其功能)
3.运行程序查看效果 F5运行程序,查看效果。在顶部就会看到自定义的tab页,及其tab内的按钮,实现对原有office功能的扩展。

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值