質問するログイン新規登録

質問編集履歴

1

質問追加

2020/04/24 12:35

投稿

kkg_No_05
kkg_No_05

スコア13

title CHANGED
File without changes
body CHANGED
@@ -72,4 +72,101 @@
72
72
 
73
73
  dataGrid.ItemsSource = Source_DG;
74
74
  }
75
+ ```
76
+
77
+
78
+ ### 前提・実現したいこと(追記)
79
+ 上記のコードから、DataGridのソース元を配列から2次元Listに変更しました。
80
+
81
+ ### 該当のソースコード
82
+ ```C#
83
+ public ObservableCollection<DataGrid_Data> Source_DG = new ObservableCollection<DataGrid_Data>();
84
+
85
+ public List<List<string>> ItemNames = new List<List<string>>(); //リスト化
86
+ public List<List<string>> ItemCodes = new List<List<string>>(); //リスト化
87
+ public List<List<string>> ItemEnables = new List<List<string>>(); //リスト化
88
+
89
+
90
+ public string[] str_ItemNames = { "AAA", "BBB", "CCC", "DDD" };
91
+ public string[] str_ItemCodes = { "aaa", "bbb", "ccc", "ddd" };
92
+ public string[] str_ItemEnables = { "111", "222", "333", "444" };
93
+ public string[] str_Dummys = { "0", "00", "000", "0000" };
94
+
95
+ public int group = 0;
96
+
97
+ public MainWindow()
98
+ {
99
+ InitializeComponent();
100
+
101
+
102
+ Init_ItemList();
103
+
104
+
105
+ for (int i = 0; i < str_ItemCodes.Length; i++)
106
+ {
107
+ Source_DG.Add(new DataGrid_Data(ItemNames[group][i], ItemCodes[group][i], ItemEnables[group][i]) { });
108
+ }
109
+
110
+ dataGrid.ItemsSource = Source_DG;
111
+ }
112
+
113
+ public void Init_ItemList()
114
+ {
115
+ for (int i = 0; i < 4; i++)
116
+ {
117
+ ItemNames.Add(new List<string>());
118
+ ItemCodes.Add(new List<string>());
119
+ ItemEnables.Add(new List<string>());
120
+ }
121
+
122
+ ItemNames[group].AddRange(str_ItemNames);
123
+ ItemCodes[group].AddRange(str_ItemCodes);
124
+ ItemEnables[group].AddRange(str_ItemEnables);
125
+
126
+ ItemNames[group + 1].AddRange(str_Dummys);
127
+ ItemCodes[group + 1].AddRange(str_Dummys);
128
+ ItemEnables[group + 1].AddRange(str_Dummys);
129
+
130
+ ItemNames[group +2].AddRange(str_ItemNames);
131
+ ItemCodes[group +2].AddRange(str_ItemCodes);
132
+ ItemEnables[group +2].AddRange(str_ItemEnables);
133
+ }
134
+
135
+
136
+ public class DataGrid_Data
137
+ {
138
+ public string Data_Name { get; set; }
139
+ public string Data_Code { get; set; }
140
+ public string Data_Enable { get; set; }
141
+
142
+ public DataGrid_Data(string Name, string Code, string Enable)
143
+ {
144
+ Data_Name = Name;
145
+ Data_Code = Code;
146
+ Data_Enable = Enable;
147
+ }
148
+ }
149
+
150
+ private void Button1_Click(object sender, RoutedEventArgs e)
151
+ {
152
+ group = int.Parse(TextBox.Text);
153
+
154
+ Source_DG.Clear();
155
+
156
+ for (int i = 0; i < str_ItemCodes.Length; i++)
157
+ {
158
+ Source_DG.Add(new DataGrid_Data(ItemNames[group][i], ItemCodes[group][i], ItemEnables[group][i]) { });
159
+ }
160
+
161
+ dataGrid.ItemsSource = Source_DG;
162
+ }
163
+
164
+ private void Button2_Click(object sender, RoutedEventArgs e)
165
+ {
166
+ /*
167
+ ItemNames = Source_DG.Select(x => x.Data_Name).ToArray();
168
+ ItemCodes = Source_DG.Select(x => x.Data_Code).ToArray();
169
+ ItemEnables = Source_DG.Select(x => x.Data_Enable).ToArray();
170
+ */
171
+ }
75
172
  ```