基于numericupdown在DataGridView中添加行

问题描述:

如何根据numericupdown值的值添加和删除行?基于numericupdown在DataGridView中添加行

我试过创建这个;

private void numericUpDown1_ValueChanged(object sender, EventArgs e) 
     { 
      dataGridView1.Rows.Add(); 
     } 

它增加了正确,但是,当我减少它不断增加的值!

是的我知道这真的是错误的,因为无论何时数值下降值被改变,它总是会增加。

我在问什么是增加属性和减少数字控制属性?有没有办法解决我的问题?

顺便说一句,我已将numericupdown值设置为1,以便1是默认值。

请!请!

+0

如果我的回答没有包含足够的细节,然后我误解你的完整目标 - 你应该能够与一个我写信给你更换处理器numericUpDown1_ValueChanged和解决你的问题我的理解。你用我的代码看到的不是你想要的行为? – 2012-03-15 20:59:45

不要忘记,数字上下控件可以直接编辑,所以当数值发生变化时,不能保证你只有一行不同于以前的位置。

您需要更改行数,直到它与数值控件的当前值相匹配。事情是这样的:

private void numericUpDown1_ValueChanged(object sender, EventArgs e) 
{ 
    // presuming numericUpDown1 cannot have a value below zero 

    // Note that when dataGridView1.Rows.Count == numericUpDown1.Value 
    // these loops will do nothing, as we would want... 
    while (dataGridView1.Rows.Count < numericUpDown1.Value) 
    { 
     dataGridView1.Rows.Add(); 
    } 
    while (dataGridView1.Rows.Count > numericUpDown1.Value) 
    { 
     dataGridView1.Rows.RemoveAt(dataGridView1.Rows.Count - 1); 
    } 
} 
+0

谢谢你先生。这是一个很好的参考:)) – 2012-02-12 01:33:13