Winform中实现List<string>赋值给dataGridView与实现多选、全选和获取选择的内容
場(chǎng)景
Winform中給DataGridView添加多選框列并獲取選中行的內(nèi)容:
Winform中給DataGridView添加多選框列并獲取選中行的內(nèi)容_BADAO_LIUMANG_QIZHI的博客-CSDN博客
在上面的基礎(chǔ)上,實(shí)現(xiàn)了添加多選框并獲取選中行的內(nèi)容。
如果要將List<string>作為dataGridView的數(shù)據(jù)源并實(shí)現(xiàn)多選和全選以及獲取選擇的內(nèi)容怎么實(shí)現(xiàn)。
注:
博客:
BADAO_LIUMANG_QIZHI的博客_CSDN博客
關(guān)注公眾號(hào)
霸道的程序猿
獲取編程相關(guān)電子書(shū)、教程推送與免費(fèi)下載。
實(shí)現(xiàn)
1、將List<string>賦值給dataGridView的數(shù)據(jù)源
this.dataGridView_show_tables_name.DataSource = this.tableNameList.Select(x => new { Value = x }).ToList();其中tableNameList就是List<string>
2、實(shí)現(xiàn)多選框
??????????? DataGridViewColumn checkCol = new DataGridViewCheckBoxColumn();checkCol.Name = "選擇";this.dataGridView_show_tables_name.Columns.Add(checkCol);3、實(shí)現(xiàn)全選
首先添加一個(gè)checkbox作為全選選擇框
然后實(shí)現(xiàn)其changed事件
??????? private void checkBox1_CheckedChanged(object sender, EventArgs e){if (this.checkBox_select_all.Checked == true){for (int i = 0; i < this.dataGridView_show_tables_name.Rows.Count; i++){this.dataGridView_show_tables_name.Rows[i].Cells["選擇"].Value = 1;}}else{for (int i = 0; i < this.dataGridView_show_tables_name.Rows.Count; i++){this.dataGridView_show_tables_name.Rows[i].Cells["選擇"].Value = 0;}}}在上面添加checkCol時(shí)設(shè)置了其N(xiāo)ame屬性。,所以這里通過(guò)Cells[|"選擇"]獲取到對(duì)應(yīng)列。
4、獲取選擇的內(nèi)容
首先聲明變量來(lái)接收獲取的內(nèi)容
List<string> selectedTableNameList = new List<string>();然后再需要獲取選擇內(nèi)容的地方
??????????? this.selectedTableNameList.Clear();for (int i = 0; i < this.dataGridView_show_tables_name.Rows.Count; i++){if ((bool)this.dataGridView_show_tables_name.Rows[i].Cells["選擇"].EditedFormattedValue == true){selectedTableNameList.Add(this.dataGridView_show_tables_name.Rows[i].Cells[1].Value.ToString());}} 與50位技術(shù)專(zhuān)家面對(duì)面20年技術(shù)見(jiàn)證,附贈(zèng)技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的Winform中实现List<string>赋值给dataGridView与实现多选、全选和获取选择的内容的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: ERROR 2059 (HY000):
- 下一篇: Winform中实现点击按钮弹窗输入密码