我正在尝试从文本框添加到datagridview但代码不起作用
dataGridView1.Rows[0].Cells[0].Value = textBox6.Text;
dataGridView1.Rows[0].Cells[1].Value = textBox5.Text;
dataGridView1.Rows[0].Cells[2].Value = textBox7.Text;
dataGridView1.Rows[0].Cells[3].Value = dateTimePicker3.Value;
答案 0 :(得分:2)
假设您已正确设置了DataGridView
列,则可以使用以下DataGridViewRowCollection.Add Method (Object[])重载
dataGridView1.Rows.Add(textBox6.Text, textBox5.Text, textBox7.Text, dateTimePicker3.Value);
请注意,只有当网格视图中的列数与传递的值的计数相同时,上述操作才有效。
或者你可以使用这样的东西,这对每个场景都适用
int rowIndex = dataGridView1.Rows.Add();
var row = dataGridView1.Rows[rowIndex];
row.Cells[0].Value = textBox6.Text;
row.Cells[1].Value = textBox5.Text;
row.Cells[2].Value = textBox7.Text;
row.Cells[3].Value = dateTimePicker3.Value;
答案 1 :(得分:2)
现在我知道你确实在一个表单项目中。我看到另一个人已经建议这个,我在断言中添加,这样如果任何TextBox控件为空,则不会添加该行。
if ((!string.IsNullOrWhiteSpace(textBox6.Text)) || (!!string.IsNullOrWhiteSpace(textBox5.Text)) || (!string.IsNullOrWhiteSpace(textBox7.Text)))
{
dataGridView1.Rows.Add(new object[] {textBox6.Text,textBox5.Text,textBox7.Text,dateTimePicker3.Value });
}
答案 2 :(得分:1)
您可以从文本框中创建字符串数组,并将其添加到数据网格视图中。
string[] row = new string[] { textBox6.Text,textBox5.Text,textBox7.Text,
dateTimePicker3.Value};
dataGridView1.Rows.Add(row);