2011-11-14 12 views
0

私はこのように移入され3リストビューの(だけでなく、これは何もすることができが、リストビューは一例です)があります。クラスで3つのリストビューの項目を保存する方法

LIST1  LIST2  LIST3 
A1   
B1 
C1 

これが最初のリストであります

私は「A1」をクリックすると、リスト2は、いくつかのアイテムを取得します:

LIST1  LIST2  LIST3 
A1   A2 
B1   B2 
C1   C2 
      D2 
      E2 

同じことが、私はリスト2の項目をクリックすると、その後、LIST3は、いくつかの項目を取得しますが起こります。 A2に、この時間は、私をクリックしてください:

LIST1  LIST2  LIST3 
A1   A2  A3 
B1   B2  B3 
C1   C2  
      D2  
      E2 

だからアイデアは私がすべてのリストビュー件のデータをhodlsオブジェクト(クラス)を作ることができるか、でしょうか?

それだけで2、私はこのように考えていた場合:

public class StoreData 
{ 
    public string ListOne {get;set;} 
    public List<string> ListTwo = new List<string>(); 

    public AddToLostTwo(string text) 
    { 
     ListTwo.Add(text) 
    } 
} 

そして私は、実行時に行うことができます:

foreach(string str in ListOne) 
{ 
    List<StoreData> datas = new List<StoreData>(); 
    StoreData data = new StoreData(); 

    data.ListOne = str; 

    foreach(string str2 in ListTwo) 
    { 
     data.AddToListTwo(str2); 
    } 
} 

だから私の質問は、でこれを行うための最善の方法は何です2つ以上のリストのC#?私は後でこのようなものを紙に印刷したいと考えています。

DUMP LISTS 
---------- 
NAME  VALUE  VALUE 
A1   A2  A3 
        B3 

A1   B2  D3 
        E3 

私が十分明確でないかどうか教えてください!

答えて

1

これにはあなた自身のクラスは本当に必要ありません。どのようにDictionary

Dictionary<string, IList<string>> lists = new Dictionary<string, IList<string>>(); 

などを使用する方法について次に、

lists.Add("List1"); 

のような新しいリストを追加し、このクラスを使用して私の意見から

lists["List1"].Add("Item1"); 
+0

コードを使用してデータをダンプする方法を示すコードを教えてください。 –

1
public class StoreData 
{ 
    public string ItemName {get;set;} 
    public List<StoreData> ChildList = new List<StoreData>(); 

    public AddToChilds(StoreData data) 
    { 
     ChildList.Add(data) 
    } 
} 

のように、そのリストに項目を追加することができます構造はあなたが望むだけ多くのレベルを持つことができます。

関連する問題