给DataGridView动态添加行 给DataGridView动态添加行,怎样根据模拟量分区数的不同,下面自动添加相应的行? 一个分区里有四个字段,比如模拟分区数是5,那就添加20行! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 看不见图,如果没绑定数据集的话,就直接添加,Rows.Add(20),添加20行 不是简单的一次性添加20行,是根据上面模拟量的分区数,下面自动更新。比如说分区数是5下面的模拟分区就到五模拟量分区5-功能码=3模拟量分区5-数据类型=int2模拟量分区5-寄存器数量=1模拟量分区5-起始地址=4模拟量分区4-功能码=3模拟量分区4-数据类型=int2模拟量分区4-寄存器数量=1模拟量分区4-起始地址=3模拟量分区3-功能码=3模拟量分区3-数据类型=int2模拟量分区3-寄存器数量=1模拟量分区3-起始地址=2模拟量分区2-功能码=3模拟量分区2-数据类型=int2模拟量分区2-寄存器数量=1模拟量分区2-起始地址=1模拟量分区1-功能码=3模拟量分区1-数据类型=int2模拟量分区1-寄存器数量=1模拟量分区1-起始地址=0 不是简单的一次性添加20行,是根据上面模拟量的分区数,下面自动更新。比如说分区数是5下面的模拟分区就到五模拟量分区5-功能码=3模拟量分区5-数据类型=int2模拟量分区5-寄存器数量=1模拟量分区5-起始地址=4模拟量分区4-功能码=3模拟量分区4-数据类型=int2模拟量分区4-寄存器数量=1模拟量分区4-起始地址=3模拟量分区3-功能码=3模拟量分区3-数据类型=int2模拟量分区3-寄存器数量=1模拟量分区3-起始地址=2模拟量分区2-功能码=3模拟量分区2-数据类型=int2模拟量分区2-寄存器数量=1模拟量分区2-起始地址=1模拟量分区1-功能码=3模拟量分区1-数据类型=int2模拟量分区1-寄存器数量=1模拟量分区1-起始地址=0 DataGridView控件在实际应用中非常实用,特别需要表格显示数据时。可以静态绑定数据源,这样就自动为DataGridView控件添加相应的行。假如需要动态为DataGridView控件添加新行,方法有很多种,下面简单介绍如何为DataGridView控件动态添加新行的两种方法:方法一:int index=this.dataGridView1.Rows.Add();this.dataGridView1.Rows[index].Cells[0].Value = "1"; this.dataGridView1.Rows[index].Cells[1].Value = "2"; this.dataGridView1.Rows[index].Cells[2].Value = "监听";利用dataGridView1.Rows.Add()事件为DataGridView控件增加新的行,该函数返回添加新行的索引号,即新行的行号,然后可以通过该索引号操作该行的各个单元格,如dataGridView1.Rows[index].Cells[0].Value = "1"。这是很常用也是很简单的方法。方法二:DataGridViewRow row = new DataGridViewRow();DataGridViewTextBoxCell textboxcell = new DataGridViewTextBoxCell();textboxcell.Value = "aaa";row.Cells.Add(textboxcell);DataGridViewComboBoxCell comboxcell = new DataGridViewComboBoxCell();row.Cells.Add(comboxcell);dataGridView1.Rows.Add(row);方法二比方法一要复杂一些,但是在一些特殊场合非常实用,例如,要在新行中的某些单元格添加下拉框、按钮之类的控件时,该方法很有帮助。DataGridViewRow row = new DataGridViewRow();是创建DataGridView的行对象,DataGridViewTextBoxCell是单元格的内容是个TextBox,DataGridViewComboBoxCell是单元格的内容是下拉列表框,同理可知,DataGridViewButtonCell是单元格的内容是个按钮,等等。textboxcell是新创建的单元格的对象,可以为该对象添加其属性。然后通过row.Cells.Add(textboxcell)为row对象添加textboxcell单元格。要添加其他的单元格,用同样的方法即可。最后通过dataGridView1.Rows.Add(row)为dataGridView1控件添加新的行row。 写一个for循环!但写不出来,呵呵自己写出来了分享一下: int i = int.Parse(dataGridView1.Rows[12].Cells[1].Value.ToString()); int k,j; for (k = 0; k <i; k++) { j = k + 1; this.dataGridView1.Rows.Add(4); dataGridView1.Rows[17+k*4].Cells[0].Value = "模拟量分区" + j + "-起始地址"; dataGridView1.Rows[17 + k * 4].Cells[2].Value = "3"; dataGridView1.Rows[17 + k * 4].Cells[3].Value = ""; dataGridView1.Rows[17 + k * 4 + 1].Cells[0].Value = "模拟量分区" + j + "-寄存器数量"; dataGridView1.Rows[17 + k * 4 + 1].Cells[2].Value = "3"; dataGridView1.Rows[17 + k * 4 + 1].Cells[3].Value = ""; dataGridView1.Rows[17 + k * 4 + 2].Cells[0].Value = "模拟量分区" + j + "-数据类型"; dataGridView1.Rows[17 + k * 4 + 2].Cells[2].Value = "3"; dataGridView1.Rows[17 + k * 4 + 2].Cells[3].Value = ""; dataGridView1.Rows[17 + k * 4 + 3].Cells[0].Value = "模拟量分区" + j + "-功能码"; dataGridView1.Rows[17 + k * 4 + 3].Cells[2].Value = "3"; dataGridView1.Rows[17 + k * 4 + 3].Cells[3].Value = ""; } c#调用Delphi动态库,pbitmapinfo 类型对应C#的什么类型?(求高手指点) 如何将文字生成图片 如果得到gridview删除数据的条数 动态添加checkbox如何取值 动态加载,Assembly.Load失败,帮帮忙! 求一份功能强大的源码 谁有免费的.net虚拟主机空间 C#实现监控软件“另存为”的操作 c#中位操作的问题 能否将一条记录设置放在listview的最下面一行?比如 总计记录 C#中 有没有之旋转不改变图像大小的函数? 一道逻辑编程题目。小菜求大神出马
下面的模拟分区就到五
模拟量分区5-功能码=3
模拟量分区5-数据类型=int2
模拟量分区5-寄存器数量=1
模拟量分区5-起始地址=4
模拟量分区4-功能码=3
模拟量分区4-数据类型=int2
模拟量分区4-寄存器数量=1
模拟量分区4-起始地址=3
模拟量分区3-功能码=3
模拟量分区3-数据类型=int2
模拟量分区3-寄存器数量=1
模拟量分区3-起始地址=2
模拟量分区2-功能码=3
模拟量分区2-数据类型=int2
模拟量分区2-寄存器数量=1
模拟量分区2-起始地址=1
模拟量分区1-功能码=3
模拟量分区1-数据类型=int2
模拟量分区1-寄存器数量=1
模拟量分区1-起始地址=0
下面的模拟分区就到五
模拟量分区5-功能码=3
模拟量分区5-数据类型=int2
模拟量分区5-寄存器数量=1
模拟量分区5-起始地址=4
模拟量分区4-功能码=3
模拟量分区4-数据类型=int2
模拟量分区4-寄存器数量=1
模拟量分区4-起始地址=3
模拟量分区3-功能码=3
模拟量分区3-数据类型=int2
模拟量分区3-寄存器数量=1
模拟量分区3-起始地址=2
模拟量分区2-功能码=3
模拟量分区2-数据类型=int2
模拟量分区2-寄存器数量=1
模拟量分区2-起始地址=1
模拟量分区1-功能码=3
模拟量分区1-数据类型=int2
模拟量分区1-寄存器数量=1
模拟量分区1-起始地址=0
方法一:
int index=this.dataGridView1.Rows.Add();
this.dataGridView1.Rows[index].Cells[0].Value = "1";
this.dataGridView1.Rows[index].Cells[1].Value = "2";
this.dataGridView1.Rows[index].Cells[2].Value = "监听";利用dataGridView1.Rows.Add()事件为DataGridView控件增加新的行,该函数返回添加新行的索引号,即新行的行号,然后可以通过该索引号操作该行的各个单元格,如dataGridView1.Rows[index].Cells[0].Value = "1"。这是很常用也是很简单的方法。
方法二:
DataGridViewRow row = new DataGridViewRow();
DataGridViewTextBoxCell textboxcell = new DataGridViewTextBoxCell();
textboxcell.Value = "aaa";
row.Cells.Add(textboxcell);
DataGridViewComboBoxCell comboxcell = new DataGridViewComboBoxCell();
row.Cells.Add(comboxcell);
dataGridView1.Rows.Add(row);
方法二比方法一要复杂一些,但是在一些特殊场合非常实用,例如,要在新行中的某些单元格添加下拉框、按钮之类的控件时,该方法很有帮助。
DataGridViewRow row = new DataGridViewRow();是创建DataGridView的行对象,DataGridViewTextBoxCell是单元格的内容是个TextBox,DataGridViewComboBoxCell是单元格的内容是下拉列表框,同理可知,DataGridViewButtonCell是单元格的内容是个按钮,等等。textboxcell是新创建的单元格的对象,可以为该对象添加其属性。然后通过row.Cells.Add(textboxcell)为row对象添加textboxcell单元格。要添加其他的单元格,用同样的方法即可。
最后通过dataGridView1.Rows.Add(row)为dataGridView1控件添加新的行row。
int k,j;
for (k = 0; k <i; k++)
{
j = k + 1;
this.dataGridView1.Rows.Add(4);
dataGridView1.Rows[17+k*4].Cells[0].Value = "模拟量分区" + j + "-起始地址";
dataGridView1.Rows[17 + k * 4].Cells[2].Value = "3";
dataGridView1.Rows[17 + k * 4].Cells[3].Value = "";
dataGridView1.Rows[17 + k * 4 + 1].Cells[0].Value = "模拟量分区" + j + "-寄存器数量";
dataGridView1.Rows[17 + k * 4 + 1].Cells[2].Value = "3";
dataGridView1.Rows[17 + k * 4 + 1].Cells[3].Value = "";
dataGridView1.Rows[17 + k * 4 + 2].Cells[0].Value = "模拟量分区" + j + "-数据类型";
dataGridView1.Rows[17 + k * 4 + 2].Cells[2].Value = "3";
dataGridView1.Rows[17 + k * 4 + 2].Cells[3].Value = "";
dataGridView1.Rows[17 + k * 4 + 3].Cells[0].Value = "模拟量分区" + j + "-功能码";
dataGridView1.Rows[17 + k * 4 + 3].Cells[2].Value = "3";
dataGridView1.Rows[17 + k * 4 + 3].Cells[3].Value = "";
}