2017-08-04 11 views
-1

私が開発したC#フォームアプリケーションでは、リストに追加したメッセージをツリービューに同時に追加したいと思います。私は以前に.XMLファイルに追加したメッセージでこれを行うことができましたが、リストではできませんでした。C#ボタンを押したときにリストに追加されたメッセージをツリービューに追加

public void buttonAddNewMessage_Click(object sender, EventArgs e) 
    { 

     addMessageList.Add(new AddedMessageList // ↓ 
          { messageName = textMessageName.Text, // ↓ 
           messageDirection = textMessageDirection.Text, // ↓ 
           messageFrequency = textMessageFrequency.Text }); // → Listeye Mesaj Ekleme 
    } 

enter image description here

私は私が以前に.xmlファイルに保存されたメッセージのために開発されたアプリケーションの写真を共有しています。 ここで、リスト内のメッセージをtreeViewに追加します。 TreeViewは、messageNameのみを表示します。

public void PopulateTreeView(string name, TreeNode parentNode) 
    { 

     var filteredItems = addMessageList.Where(item => item.messageName == name); 
     TreeNode childNode; 

     foreach (var i in filteredItems.ToList()) 
     { 

      if (parentNode == null) 
      { 

       childNode = messagesEditorObject.treeViewMessageList.Nodes.Add(i.messageName); 
      } 

      else 
      { 

       childNode = parentNode.Nodes.Add(i.messageName); 
      } 

      PopulateTreeView(i.messageName, childNode); 
     } 
    } 
+0

ツリービューに項目を挿入するコードを投稿してください。 –

+0

予想される結果はどうでしょうか? 'messageDirection'と' messageFrequency'は 'messageName'の子ノードですか? –

+0

私はリストに追加したメッセージをツリービューに表示するようにします。 –

答えて

0

問題の解決に役立つでしょう。

TreeNode nodeDirection = new TreeNode(textMessageDirection.Text); 
TreeNode nodeFrequency = new TreeNode(textMessageFrequency.Text); 
TreeNode[] array = new TreeNode[] { nodeDirection , nodeFrequency }; 
treeNode = new TreeNode(textMessageName.Text, array); 
treeView1.Nodes.Add(treeNode); 
関連する問題