2011-05-27 143 views
1

我有datagridview,我想在其中插入來自文本框a和NumericUpDown框的值,但是我面臨的一個問題是插入到datagridview中的這些值不在我指定的列中。將數據添加到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; 

因爲當我用這種方式寫出來我得到一個錯誤

小數MarkPoints = HoursNumericUpDown.Value * HoursNumericUpDown.Value;

我覺得這是沒有什麼不同的答案,例如,讓我們

HoursNumericUpDown value is 2 
MarkNumericUpDown value is 3 

在第一種方式,答案是6這是正確的,但在第二個方式,答案是4 什麼是錯的?

回答

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)