数据网格视图组合框值

本文关键字:组合 视图 数据网 网格 数据 | 更新日期: 2023-09-27 17:58:22

我在表单应用程序的组框中有一个数据网格视图。我制作了这个代码。

private bool checkrow(DataGridViewRow testrow)
{
    for (int i = 0; i < testrow.Cells.Count; i++)
    {
        if (testrow.Cells[i].Value != null)
        {
            MessageBox.Show(testrow.Cells[i].Value.ToString());
            if (testrow.Cells[i].Value.ToString() != string.Empty)
            {
                MessageBox.Show(testrow.Cells[i].Value.ToString());
                return true;
            }
        }
    }
    return false;
}
private void toolStripButton1_Click(object sender, EventArgs e)
{
    if (checkrow(dgvTimeTracker.CurrentRow) == true)
    {
        string cbtext = dgvTimeTracker.Rows[dgvTimeTracker.SelectedCells[0].RowIndex].Cells[1].Value.ToString();
        MessageBox.Show(cbtext);
        string[] newrow = new string[] { DateTime.Now.ToShortDateString(), cbtext, DateTime.Now.ToLongTimeString(), "", "", "" };
    }    
    else
    {
        MessageBox.Show("Error!");
    }    
}

如果我在一个新项目上运行这段代码,它会完美运行。但是,如果我在其他项目中运行它,它只会返回"错误"消息,或者在获取datagridview 的combobox项{1}列的值时返回nullreference异常

有人能帮我吗??

数据网格视图组合框值

如果看到"错误!"消息,则意味着checkrow正在返回false,这意味着行中的每个单元格都不包含null或空字符串。如果你正在寻找"空"细胞,你应该测试DBNull.Value吗?如果从数据库中检索包含NULL的数据,就会得到这样的结果。