2012-12-05 64 views
0

我們必須爲scrum管理系統設計一個界面作爲uni產品。但是,我們只對界面感興趣。編碼沒有標記(我們實際上沒有使用任何C#)。我們所需要做的就是鏈接表單(甚至這不是必需的)。Visual Studio中的樹視圖鏈接

爲了使表單更具可讀性,我包含了一個樹視圖。它看起來像這樣:

All projects 
    - Project 1 
    - Product Backlog 
    - Team 
    - Sprints 
     - Sprint Backlog 1 
     - Sprint Backlog 2 

    - Project 2 etc 

在我的主界面頁,我已經鏈接到各個項目,這樣你就可以選擇在樹視圖中的一個項目,它會彈出一個新的形式(對前一個頂部)。這使用以下代碼:

private void treeView1_AfterSelect(object sender, TreeViewEventArgs e) 
    { 
     switch (e.Node.Text) 
     { 
      case "Project 1": 
       var newForm = new ProjectInterface(); 
       newForm.Show(); 
       this.Hide(); 
       break; 

      etc 
     } 
    } 

這一切都可以在主界面頁面上正常工作。但是,當我打開新窗體查看Project 1時,樹視圖中的鏈接實際上都不起作用。例如,如果我在觀看項目1,並希望查看項目2,下面的代碼(!我想)應該工作:

private void treeView1_AfterSelect(object sender, TreeViewEventArgs e) 
    { 
     switch (e.Node.Text) 
     { 
      case "Project 2": 
       var newForm = new ProjectInterface2(); 
       newForm.Show(); 
       this.Hide(); 
       break; 
     } 
    } 

沒有任何人有什麼我做錯了任何想法?

另外,請記住我們這樣做的方式是由講師設定的(我們也在學習同時使用Subversion)。因此,不要擔心指出更有效的方法來做到這一點,只是如何將表格連接在一起!謝謝

+0

你試過調試過嗎?在「項目2」情況下實際達到了斷點: –

+0

它似乎正在達成它。它只是沒有做任何事情。 –

+0

嘗試用newForm.ShowDialog()替換newForm.Show() –

回答

1

如果您在設計器中看到主窗體treelist1代碼並將其與複製的窗體設計器代碼進行比較,您會注意到此行缺少this.treeView1.AfterSelect + = new System.Windows.Forms.TreeViewEventHandler( this.treeView1_AfterSelect);

將此添加到新複製的表單設計器,它應該工作。

+0

完美。再次感謝:) –

+0

很高興有幫助。 –