use*_*757 8 .net c# datagridview winforms
如何删除除列标题以外的所有datagridview行?
我试过了:
dataGridView1.Rows.clear();
Run Code Online (Sandbox Code Playgroud)
但它不起作用.
我试图循环遍历行并使用该RemoveAt方法,但它不会删除所有行:
private void Form5_Load(object sender, EventArgs e)
{
dataGridView1.AutoGenerateColumns = true;
SqlConnection con = new SqlConnection(@"Data Source=.\myserver;Initial Catalog=test;Integrated Security=True");
adapter = new SqlDataAdapter("SELECT id as [#], description as [Description], unit as [Unit], amount as [Amount], unitPrice as [Unit Price], total as [Total] FROM tbl_poMaterials", con);
adapter.SelectCommand.CommandType = CommandType.Text;
DataTable tb = new DataTable();
adapter.Fill(tb);
SqlCommandBuilder builder = new SqlCommandBuilder(adapter);
dataGridView1.DataSource = tb;
dataGridView1.Columns[0].Width = 30;
dataGridView1.Columns[0].ReadOnly = true;
dataGridView1.Columns[1].Width = 660;
for (int i = 0; i < tb.Rows.Count; i++)
{
tb.Rows.RemoveAt(i);
}
}
Run Code Online (Sandbox Code Playgroud)
小智 13
This worked for me:
do
{
foreach (DataGridViewRow row in dataGridViewError.Rows)
{
try
{
dataGridViewError.Rows.Remove(row);
}
catch (Exception) { }
}
} while (dataGridViewError.Rows.Count > 1);
Run Code Online (Sandbox Code Playgroud)
您需要清除DataSource或DataTable,而不是datagridview.
dataGridView.DataSource = null;
dataGridView.Refresh();
Run Code Online (Sandbox Code Playgroud)
要么
dataTable.Clear();
dataGridView.Refresh();
Run Code Online (Sandbox Code Playgroud)
我用
dataGridViewResult.Rows.Clear();
Run Code Online (Sandbox Code Playgroud)
清除每一行而不删除列.