PowerPoint C#-通过侦听器添加形状
我正在尝试用C#为powerpoint编写一个外接程序,它可以创建一张新幻灯片,并添加文本框,单击该文本框可以执行特定操作。目前,我已经得到了一个操作,它打开记事本,但我希望它调用另一个函数,而不是 当前代码如下所示:PowerPoint C#-通过侦听器添加形状,c#,powerpoint,C#,Powerpoint,我正在尝试用C#为powerpoint编写一个外接程序,它可以创建一张新幻灯片,并添加文本框,单击该文本框可以执行特定操作。目前,我已经得到了一个操作,它打开记事本,但我希望它调用另一个函数,而不是 当前代码如下所示: PowerPoint.Shape sendQuestion = slide.Shapes.AddTextbox(Office.MsoTextOrientation.msoTextOrientationHorizontal, slideWidth - 200, slideHeigh
PowerPoint.Shape sendQuestion = slide.Shapes.AddTextbox(Office.MsoTextOrientation.msoTextOrientationHorizontal, slideWidth - 200, slideHeight - 50, 200, 50);
sendQuestion.Name = "sendQuestion";
sendQuestion.TextFrame.TextRange.InsertAfter("Send Question");
sendQuestion.ActionSettings[PowerPoint.PpMouseActivation.ppMouseClick].Action = PowerPoint.PpActionType.ppActionRunProgram;
sendQuestion.ActionSettings[PowerPoint.PpMouseActivation.ppMouseClick].Run = @"C:\WINDOWS\system32\notepad.exe";
在ThisAddIn\u启动方法中,初始化应用程序\u WindowSelectionChange事件处理程序
public void ThisAddIn_Startup(object sender, System.EventArgs e)
{
this.Application.WindowSelectionChange += Application_WindowSelectionChange;
}
对于事件处理程序,可以使用以下代码-
public void Application_WindowSelectionChange(PowerPoint.Selection sel)
{
if (sel.Type == PowerPoint.PpSelectionType.ppSelectionShapes)
{
if (sel.ShapeRange.Name == "MyTextBox")
{
//Perform certain action.
}
}
}
在ThisAddIn_Shutdown方法中,也需要执行此操作-
public void ThisAddIn_Startup(object sender, System.EventArgs e)
{
this.Application.WindowSelectionChange -= Application_WindowSelectionChange;
}
这似乎不起作用。我的密码在这里