3

我有一個Visual Studio Extensions項目,其中VSPackage擴展Microsoft.VisualStudio.Shell.Package將類屬性公開到Visual Studio屬性窗口

,有此類:

public class PropertyPageItem 
    { 
     private string _item1; 
     private string _item2; 

     public PropertyPageItem() 
     { 
      _item1 = "ITEM1"; 
      _item2 = "ITEM2"; 
     } 

     [Description("Item1")] 
     [Category("Item-Field")] 
     public string Item1 
     { 
      get 
      { 
       return _item1; 
      } 
      set 
      { 
       _item1 = value; 
      } 
     } 

     [Description("Item2")] 
     [Category("Item-Field")] 
     public string Item2 
     { 
      get 
      { 
       return _item2; 
      } 
      set 
      { 
       _item2 = value; 
      } 
     } 
    } 

上述類不是動態的(不考慮事件等),它是理解的方法着想。

我們該如何將此類鏈接到Visual Studio屬性窗口?在瀏覽解決方案資源管理器時,我們可以看到文件屬性。目標是使用此窗口,而不是創建另一個屬性網格控件。

試着按照這個link的說明,但它讓我更加困惑。

+0

你是什麼意思'將這個類鏈接到屬性窗口'?你想要實現什麼功能? – 2013-02-20 09:30:10

+0

通過鏈接我的意思是屬性和它們在類中的值,要在屬性窗口上顯示,並在屬性窗口上進行的修改顯示在類對象本身上。對不起,在第一時間不清楚! – dushyantp 2013-02-20 09:36:54

回答

0

經過小小的研究,我想出瞭如何去做。

按照link

在此演練的步驟6中的說明,取代「這個」與「新PropertyPageItem()」

public override void OnToolWindowCreated() 
{ 
    ArrayList listObjects = new ArrayList(); 
    listObjects.Add(new PropertyPageItem()); 
    SelectList(listObjects); 
} 

之後,直到第7步的「說明屬性的屬性窗口「部分,實現了目標,PropertyPageItem類中的屬性暴露在Visual Studio PropertyWindow中。

希望這是有幫助的。

相關問題