从所有datagridviews中删除空行

时间:2012-10-16 08:21:56

标签: c# winforms datagridview

这样我就可以从一个datagridview中删除空行。

bool Empty = true;

            for (int i = 0; i < PrimaryRadGridView.Rows.Count; i++)
            {
                Empty = true;
                for (int j = 0; j < PrimaryRadGridView.Columns.Count; j++)
                {
                    if (PrimaryRadGridView.Rows[i].Cells[j].Value != null && PrimaryRadGridView.Rows[i].Cells[j].Value.ToString() != "")
                    {
                        Empty = false;
                        break;
                    }
                }
                if (Empty)
                {
                    PrimaryRadGridView.Rows.RemoveAt(i);
                }
            }

我有大约6个datagridviews,我想删除所有的空行。

有没有办法从界面中的所有datagridviews中删除空行?

1 个答案:

答案 0 :(得分:6)

您可以创建方法

private void clearGrid(DataGridView view) {
    for (int row = 0; row < view.Rows.Count; ++row) {
        bool isEmpty = true;
        for (int col = 0; col < view.Columns.Count; ++col) {
            object value = view.Rows[row].Cells[col].Value;
            if (value != null && value.ToString().Length > 0) {
                isEmpty = false;
                break;
            }
        }
        if (isEmpty) {
            // deincrement (after the call) since we are removing the row
            view.Rows.RemoveAt(row--);
        }
    }
}

并将每个6个DataGridView传递给方法。

clearGrid(PrimaryRadGridView);