2

numericupdown 値の値に基づいて行を追加および削除するにはどうすればよいですか??

私はこれを作成しようとしました;

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

正しく追加されますが、値を減らすと、再び追加され続けます!!!

ええ、numericupdownvalue が変更されるたびに常に追加されるため、本当に間違っていることはわかっています。

私が求めているのは、数値コントロールに増加プロパティと減少プロパティがあるということですか? 私の問題を解決する方法はありますか?

ところで、numericupdown の値を 1 に設定して、1 がデフォルト値になるようにしました。

お願いします!

4

1 に答える 1

3

数値のアップダウン コントロールは直接編集できることを忘れないでください。そのため、値が変更されたときに、以前の場所と 1 行だけ異なるという保証はありません。

数値制御器の現在の値と一致するまで、行数を変更する必要があります。このようなもの:

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 に答える