2016-09-16 64 views
0

我試圖訪問我的另一種形式的字典,但我不能......字典中的添加項目,從另一種形式

Form1.cs的

public partial class Form1 : Form 
    { 
     public DataNode rootNode; 
     public static Dictionary<string, string> documents = new Dictionary<string, string>(); 


     public Form1() { 

     } 

form2.cs

public partial class addCapitulo : Form 
    { 
     Form1 addcapitulo; 

     public addCapitulo(Form1 treeList) 
     { 
      InitializeComponent(); 
      addcapitulo = treeList; 
     } 

     private void simpleButton1_Click(object sender, EventArgs e) 
     { 
      string pageGuid = Guid.NewGuid().ToString(); 
      addcapitulo.rootNode.Nodes.Add(new DataNode("Testando", pageGuid)); 
      addcapitulo.documents.Add(pageGuid, addcapitulo.blankRtfText); 
     } 
    } 

錯誤:無法用實例引用訪問;相反,使用類型名稱來限定它。

我該如何做到這一點?能夠訪問和使用詞典以任何形式...

回答

0

本詞典是static,所以你可以只使用類型名稱:

Form1.documents.Add(pageGuid, addcapitulo.blankRtfText); 
+0

真的很感謝,作品像一個魅力:) –

2

要訪問你需要一個靜態類型:

Form1.documents 

根據錯誤提示,您無法使用Form1的實例進行訪問。

我寧願建議,以使詞典Non-Static

public Dictionary<string, string> documents = new Dictionary<string, string>(); 

然後你當前的代碼將工作原樣。我找不到要定義字典的理由static