2017-02-13 7 views
0
private void show_info() 
    { 
     List<ChannelTreeItem> result = new List<ChannelTreeItem>(); 
     try 
     { 

      result = QueryUtils.GetChannelTree(TopQuery.GetChannelList().Values,TopQuery.GetClientList().Values); 
      treeview1.nodes.add(result); 
     } 
     catch 
     { 
      MessageBox.Show("Retry later"); 
     } 
    } 

ERRORMSG:文字列c#TreeViewノードにList <ChannelTreeItem>を追加できますか?

にChannelTreeItemを変換できません。私は、ノードをTreeViewコントロールするために、このリストを追加することはできますか?

+0

私は「ChannelTreeItem」に慣れていないと私は聖霊降臨祭は「GetChannelTreeは」「追加、私はあなたにこれを伝えることができますが返されないか分からない。方法は、一般的に1つのアイテムを追加するために使用され、ときそこに指定されたオブジェクト型を受け入れる適切なロードされたメソッドはありません。ベースに戻って、これはエラーメッセージです。 "treeview1.Nodes、Add"は、ベースとして文字列を受け入れます。メソッドによって "ChannelTreeItem"をサポートされているオブジェクト型に変換する必要があります:string/TreeNodeなど。 – Tomerz

答えて

0

あなたは(ツリービュー用)Nodes.Addの優先mothodの定義を見ればあなたが唯一のタイプのTreeNodeまたは文字列のオブジェクトを追加することができます表示されます。

ですから、変換を行う必要があります。どちらの使用のToString()、またはTreeNodeオブジェクトを作成したコードから、あなたのツリービュー

にそれを追加します。

List<ChannelTreeItem> result = new List<ChannelTreeItem>(); 

あなたの結果変数はChannelTreeItemsのタイプリストです。あなたのツリーノードに入れたいものが私にはっきりしていません。各ノードにChannelTreeItemのリストが含まれているようにするか、ノードごとに1つのChannelTreeItemが必要ですか?

後者を実行するには、リスト(forループまたはforeachループ)を繰り返し、新しいノードに各アイテム文字列を追加してツリービューに追加する必要があります。

https://msdn.microsoft.com/en-us/library/system.windows.forms.treenodecollection.add(v=vs.110).aspx

関連する問題