C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

■92924 / 親階層)  List型で入れ子になっているときのデータのセット方法
□投稿者/ 河童 (72回)-(2019/11/09(Sat) 15:57:33)

分類:[C#] 

いつも大変お世話になっております。

List型が入れ子になっているときリストにDataGridViewのデータをセットする方法を教えてください。
グループのリストにはチームのリストが入れ子になっています。
チームのリストにはユーザのリストが入れ子になっています。

DataGridViewのデータを取得して、
入れ子になっているチームとユーザのリストをどのように値を取得して
リストを完成させれば良いでしょうか?

大元はGroupLstです。この中にグループ、チーム、利用者の値を入れたいです。

わからないことは、
繰り返し処理を実行しているときに、一つの値しか取得できないので、
どの様にリストごとの値を取得すればいいかです。

ご教示よろしくお願いします。

        // グループリスト
        List<GroupInfo> GroupLst;
        public class GroupInfo
        {
            public int group_num { get; set; }     
            public string group_name { get; set; }
            public List<TeamInfo> teamList = new List<TeamInfo>(); 
        }
        // チームリスト
        public class TeamInfo
        {
            public int team_num { get; set; }
            public string team_name { get; set; }
            public List<UserInfo> userList = new List<UserInfo>(); 
        }
        // 利用者リスト
        public class UserInfo
        {     
            public int user_num { get; set; }          
            public string user_name { get; set; }       
        }
    
    // ロード時にデータをセット
        private void F01_Main_Load(object sender, EventArgs e)
        {
            // データを追加
            dgvGroup.Rows.Add(1, "GroupA", 1, "TeamA", 1, "User1");
            dgvGroup.Rows.Add(1, "GroupA", 1, "TeamA", 2, "User2");
            dgvGroup.Rows.Add(2, "GroupB", 2, "TeamB", 3, "User3");
            dgvGroup.Rows.Add(2, "GroupB", 2, "TeamB", 4, "User4");
            dgvGroup.Rows.Add(3, "GroupC", 3, "TeamC", 5, "User5");

        }

        // グループリストにセット
        private void btnApply_Click(object sender, EventArgs e)
        {
            GroupLst = new List<GroupInfo>();
            string check="";
            for (int i=0; i<4; i++)
            {
                for (int j=0; j<5; j++)
                {
                    GroupInfo d = new GroupInfo();
                    d.group_num = (int)dgvGroup.Rows[i].Cells[j].Value;

                    GroupLst.Add(d);

                    check += dgvGroup.Rows[i].Cells[j].Value;
                }
            }
        }

編集キー/

前の記事(元になった記事) 次の記事(この記事の返信)
親記事 →Re[1]: List型で入れ子になっているときのデータのセット方法 /魔界の仮面弁士
→Re[1]: List型で入れ子になっているときのデータのセット方法 /河童
 
上記関連ツリー

List型で入れ子になっているときのデータのセット方法 / 河童 (19/11/09(Sat) 15:57) #92924 ←Now
Re[1]: List型で入れ子になっているときのデータのセット方法 / 魔界の仮面弁士 (19/11/09(Sat) 17:49) #92926
Re[1]: List型で入れ子になっているときのデータのセット方法 / 河童 (19/11/09(Sat) 17:43) #92925 解決済み
  └ Re[2]: List型で入れ子になっているときのデータのセット方法 / 魔界の仮面弁士 (19/11/09(Sat) 18:28) #92929 解決済み
    └ Re[3]: List型で入れ子になっているときのデータのセット方法 / 河童 (19/11/09(Sat) 19:26) #92930

上記ツリーを一括表示 / 上記ツリーをトピック表示
 
上記の記事へ返信