プログラムからクラスファイルの作成

Visual Studioのアドインに挑戦中。ドキュメント探すのだけでも一苦労です。

イベントが2回呼ばれたりよくわからないところがあるけど、次のコードをOnConnectionメソッドの後ろの方に追加したら、一応、ファイルのセーブ時にクラスファイルつくれました(例外出るけど)。

_documentEvents = _applicationObject.Events.get_DocumentEvents(null);
_documentEvents.DocumentSaved += document =>
{
 try
 {
     var solution = (Solution2)_applicationObject.Solution;
     var itemPath = solution.GetProjectItemTemplate("Class.zip", "csproj");
     var project = document.ProjectItem.ContainingProject;
     var projectItem = project.ProjectItems.AddFromTemplate(
         itemPath, "MyNewClass.cs");
     System.Windows.Forms.MessageBox.Show("Done");
 } 
 catch(Exception e)
 {
     System.Windows.Forms.MessageBox.Show(e.ToString());
 }
};

APIリファレンスがあっさりめで困る。