|
dev
newsgroups
|
|||||||||||||||||||||||
|
|||||||||||||||||||||||
How to capture a Report File Added Event?Currently I am developing a Visual Studio Add-In. In that, I have to capture the event when a .rdl file is added to a Report project. My code is as follows, public void OnConnection(object application, ext_ConnectMode connectMode, object addInInst, ref Array custom) { try { _applicationObject = (DTE2)application; _addInInstance = (AddIn)addInInst; m_objDTE = (EnvDTE.DTE)application; m_objCSharpProjectItemsEvents = (ProjectItemsEvents)m_objDTE.Events.GetObject("ProjectItemsEvents"); m_objCSharpProjectItemsEvents.ItemAdded += new _dispProjectItemsEvents_ItemAddedEventHandler(m_objCSharpProjectItemsEvents_ItemAdded); System.Diagnostics.EventLog.WriteEntry("MyAddin1", "Added"); } catch (Exception ex) { System.Diagnostics.EventLog.WriteEntry("MyAddin1", ex.ToString()); } } void se_ProjectAdded(Project Project) { System.Diagnostics.EventLog.WriteEntry("MyAddin1", Project.Name); MessageBox.Show(Project.Name + " is Added."); } void m_objCSharpProjectItemsEvents_ItemAdded(ProjectItem ProjectItem) { try { System.Diagnostics.EventLog.WriteEntry("MyAddin1", ProjectItem.Name + " " + ProjectItem.Name.ToString().IndexOf(".rdl")); if ((ProjectItem.Name.ToString().IndexOf(".rdl")) != -1 ) { Form1 objForm = new Form1(); objForm.Show(); } } catch (Exception ex) { System.Diagnostics.EventLog.WriteEntry("MyAddin1", ex.ToString()); } } Using this, I am able to capture .rdl files added to any Visual Studio Project like, Windows, Console or WebSite. But, I am not able to capture the event in a Report project. Can you please suggest me if my approach is correct? TIA, IK |
|||||||||||||||||||||||