将数据添加到DataGridView

时间:2011-05-27 11:44:32

标签: winforms datagridview

我有datagridview,我想在其中插入来自textbox a和NumericUpDown框的值,但我遇到的问题是插入到datagridview中的这些值不在我指定的列中。

这是我写的代码:

        dataGridView1.Rows.Add(MaterialTextBox.Text);
        dataGridView1.Rows.Add(HoursNumericUpDown.Value);
        dataGridView1.Rows.Add(MarkNumericUpDown.Value);
        dataGridView1.Rows.Add(MarkPoints);

顺便说一下计算从NumericUpDown框得到的值的方法是什么?

        decimal MarkPoints, x, y;
        x = HoursNumericUpDown.Value;
        y = MarkNumericUpDown.Value;
        MarkPoints = x * y;

因为当我用这种方式写它时我得到了一个错误

  
    

decimal MarkPoints = HoursNumericUpDown.Value * HoursNumericUpDown.Value;

  

我认为没有不同的答案,例如让我们

HoursNumericUpDown value is 2 
MarkNumericUpDown value is 3 

第一种方式的答案是6,这是正确的,但第二种方式的答案是4。 怎么了?

1 个答案:

答案 0 :(得分:2)

您必须指定行的单元格,然后将该行添加到dataGridView:

    Dim dgvRow As New DataGridViewRow
    Dim dgvCell As DataGridViewCell

    dgvCell = New DataGridViewTextBoxCell()
    dgvCell.Value = MaterialTextBox.Text
    dgvRow.Cells.Add(dgvCell)

    dgvCell = New DataGridViewTextBoxCell()
    dgvCell.Value = HoursNumericUpDown.Value
    dgvRow.Cells.Add(dgvCell)

    dgvCell = New DataGridViewTextBoxCell()
    dgvCell.Value = MarkNumericUpDown.Value
    dgvRow.Cells.Add(dgvCell)

    dgvCell = New DataGridViewTextBoxCell()
    dgvCell.Value = MarkPoints
    dgvRow.Cells.Add(dgvCell)

    dataGridView1.Rows.Add(dgvRow)