如何从MS Project VSTO加载项中侦听Project Open事件?

问题描述 投票:1回答:1

看起来Application对象中没有ProjectBeforeOpen事件。文档显示了一个可能有效的WindowActivate事件,但在VisualStudio中,该事件不在ThisAddIn类的Application事件列表中。

他们真的离开了这个活动吗?我错过了什么吗?

ms-project
1个回答
1
投票

在应用程序级别,使用Application.NewProject;在创建新项目和打开项目时触发它。

这是一个vb.net示例:

Private Sub Application_NewProject(pj As MSProject.Project) Handles Application.NewProject
    If String.IsNullOrEmpty(pj.Path) Then
        MessageBox.Show("New project created.")
    Else
        MessageBox.Show("Project " & pj.Name & " has been opened.")
    End If
End Sub

注意:不要将此事件与项目级事件Project.Open混淆,后者将驻留在MS Project文件或global.mpt(see SO example)中。

© www.soinside.com 2019 - 2024. All rights reserved.