0
私のツールが起動すると、現在のファイルのメソッドのリストを取得したいのですが、そのコンボボックスが_applicationObjectオブジェクトにどのように入れ子になっているのかわかりません。手伝って頂けますか?現在のファイル(VS AddIn)のメソッドリストへのアクセス
私のツールが起動すると、現在のファイルのメソッドのリストを取得したいのですが、そのコンボボックスが_applicationObjectオブジェクトにどのように入れ子になっているのかわかりません。手伝って頂けますか?現在のファイル(VS AddIn)のメソッドリストへのアクセス
私はそれをこのように行った:
private void ListMethods()
{
CodeNamespace codenamespace = null;
for(int i = 1; i <= _applicationObject.ActiveWindow.ProjectItem.FileCodeModel.CodeElements.Count; i++)
{
if(_applicationObject.ActiveWindow.ProjectItem.FileCodeModel.CodeElements.Item(i).Kind == vsCMElement.vsCMElementNamespace)
{
codenamespace = (CodeNamespace)_applicationObject.ActiveWindow.ProjectItem.FileCodeModel.CodeElements.Item(i);
}
}
for(int i = 1; i <= codenamespace.Members.Count; i++)
{
if(codenamespace.Members.Item(i) is CodeClass)
{
ListMethodsForClass(codenamespace.Members.Item(i) as CodeClass);
}
}
}
private void ListMethodsForClass(CodeClass codeclass)
{
for (int i = 1; i <= codeclass.Members.Count; i++)
{
message(codeclass.Members.Item(i).Name);
}
}
私はそれが将来的にあなたのいくつかを助けることを願っています:)