2013-11-14 76 views
0

所有人: 當我運行下面的代碼時,除了在運行應用程序時每個節點顯示「TreeNode:」字樣,一切正常。該應用程序是C Sharp Winform .NET 4.0。爲什麼winforms TreeView treenode在節點中說'treenode:'?

而是每個節點說法: 12345日期:1980年1月1日 - 客戶:XYZ

他們說: 樹節點:12345日期:1980年1月1日 - 客戶:XYZ。

我正在使用.NET 4.0。我不使用TreeView很多,但我從來沒有見過舊版.NET的這個問題。

感謝您的幫助。 戴爾

quotesTreeView.BeginUpdate(); 
quotesTreeView.Nodes.Clear(); 

for (int i = 0; i < sqmTable.Rows.Count; i++) 
{ 
    if (currentQuoteNumber != sqmTable.Rows[i]["QuoteNumber"].ToString()) 
    {       
     quotesTreeView.Nodes.Add(new TreeNode(sqmTable.Rows[i]["QuoteNumber"].ToString()) + " Date: " + sqmTable.Rows[i]["QuoteDate"].ToString() + " - Customer:" + sqmTable.Rows[i]["CustomerName"].ToString()); 

     quotesTreeView.Nodes[masterNodeNumber].Tag = C_MASTER + "," + sqmTable.Rows[i]["QuoteNumber"].ToString(); 
     quotesTreeView.Nodes[masterNodeNumber].ImageIndex = C_IMAGE_QLOGO; 
     quotesTreeView.Nodes[masterNodeNumber].SelectedImageIndex = C_IMAGE_QLOGO; 

     currentQuoteNumber = sqmTable.Rows[i]["QuoteNumber"].ToString(); 
     masterNodeNumber = quotesTreeView.Nodes.Count-1; 
    } 
} 
+3

看起來像您的datacolumn'QuoteNumber'具有前綴'TreeNode:' –

+0

您可以在控件的屬性中設置每個節點的文本。 – Brian

回答

1

這是TreeNode.ToString()方法的實現:

public override string ToString() 
{ 
    return ("TreeNode: " + ((this.text == null) ? "" : this.text)); 
} 

所以,你看到的是沒有很大的謎。例如,當您檢查一個節點時,您會在調試器中看到它。如果你真的在你的用戶界面中看到它,那麼在查看「sqmTable」的代碼中可以找到一個好的地方。確保它使用節點的Text屬性而不是ToString()。