これにはいくつかのピースがあると思います。
1) プロパティに対して独自のタイプ エディタを作成して、プロパティ グリッドを使用してプロパティ値をユーザーに表示する方法を決定できます。
このためには、UITypeEditor から継承するタイプ エディタを次のように作成する必要があります。
public class UriListUIEditor : UITypeEditor
{
//Override a couple of methods
}
このコードプロジェクトの記事を見て、簡単な例を確認してください。http://www.codeproject.com/KB/edit/flagenumeditor.aspx
次に、プロパティの EditorType 属性を指定します。
[Editor(typeof(Utils. UriListUIEditor ),
typeof(System.Drawing.Design.UITypeEditor))]
public string Uri
{ get;set;
}
2) プロジェクトでソリューションを反復するには、現在の DTE インスタンスを取得します
var dte = (EnvDTE80.DTE2)System.Runtime.InteropServices.Marshal. GetActiveObject("VisualStudio.DTE.8.0");
そして、すべてのプロジェクトを反復処理して、リストや URI などを作成します。理想的には、上記の UriListUIEditor の EditValue メソッド内でこれを行います。
foreach (var project in dte.Solution.Projects)
{
}
お役に立てれば