2

如何根据 numericupdown 值的值添加和删除行?

我试过创建这个;

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

它添加正确,但是,当我减少它继续添加的值时!

是的,我知道这确实是错误的,因为它总是在 numericupdownvalue 改变时添加。

我要问的是数字控件中是否有增加属性和减少属性?有没有办法解决我的问题?

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

拜托拜托!!!

4

1 回答 1

3

不要忘记数字上下控件可以直接编辑,因此当值更改时,不能保证您与之前的位置只有一行不同。

您需要更改行数,直到它与数值控件的当前值匹配。像这样的东西:

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);
    }
}
于 2012-02-07T00:13:53.587 回答