我怎么在文本框里输入最大和最小dataGridView里面自动成数据。比如开始是1,结束是100,自动生成100列数字。
4条回答 默认 最新
CSDN专家-showbo 2021-11-09 09:20关注直接填充DataTable,然后设置dgv的DataSource,而且是生成100行数据吧?生成100列,那生成几行数据?
测试代码如下,需要工程文件请发站内短信
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace WindowsFormsApp2 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button2_Click(object sender, EventArgs e) { int min = 0, max=0; if (txtMin.Text == "" || !int.TryParse(txtMin.Text, out min)) { MessageBox.Show("最小值为数字!"); txtMin.Select(); return; } if (txtMax.Text == "" || !int.TryParse(txtMax.Text, out max) || max < min) { MessageBox.Show("最大值为数字并且大于最小值!"); txtMax.Select(); return; } DataTable dt = new DataTable(); //生成1列,数据max-min+1行 dt.Columns.Add("col1"); for (var i = min; i <= max; i++) dt.Rows.Add(i); dataGridView1.DataSource = dt; } private void button1_Click(object sender, EventArgs e) { int min = 0, max = 0; if (txtMin.Text == "" || !int.TryParse(txtMin.Text, out min)) { MessageBox.Show("最小值为数字!"); txtMin.Select(); return; } if (txtMax.Text == "" || !int.TryParse(txtMax.Text, out max) || max < min) { MessageBox.Show("最大值为数字并且大于最小值!"); txtMax.Select(); return; } DataTable dt = new DataTable(); //生成max-min+列,数据1行 for (var i = min; i <= max; i++) { dt.Columns.Add("col"+i); } DataRow dr = dt.NewRow(); int index = 0; while (min <= max) { dr[index++] = min; min++; } dt.Rows.Add(dr); dataGridView1.DataSource = dt; } } }有帮助麻烦点下【采纳该答案】,谢谢~~有其他问题可以继续交流~
本回答被题主选为最佳回答 , 对您是否有帮助呢?评论 打赏 举报解决 1无用