So, once more:
c# - winform - VS 2010 express I have two forms with a datagridview on each (frm01-dgv01 and frm02-dgv02) On the main form (frm01) i can select dgvRow, press Delete Key - and dgvRow will be deleted.
So, I go to the second form (buttonClick): - new frm02().Show();
But, when I press Delete Key - to delete dgvRow - nothing happend ! Delete Key doesn't function !
If I enter to CellEditMode - DeleteKey – works !
Both dgv has AllowUserToDeleteRow = true.
No dgv is bounded.
Loading

Jignesh TrivediPosted May 22, 2012, 3:35 AM
private void btnDelete_Click(object sender, EventArgs e)
{
DataTable ret = new DataTable();//dataGridView1.DataSource as DataTable;
//Identify Row of datatable. and remove it to identify use your logic.
string expression = "Date > #1/1/00#";
DataRow dr = ret.Select(expression).FirstOrDefault();
if (dr != null)
{
ret.Rows.Remove(dr);
}
}
no need to rebind datasource to datagrid view because it is reference type so changes are reflected automatically.
hope this answer.
MementoPosted May 23, 2012, 4:18 AM
EhteshamPosted May 22, 2012, 1:45 AM
DataTable dt = GetData();
dataGridView1.DataSource = dt;
private void btnDelete_Click(object sender, EventArgs e)
{
DataTable ret = dataGridView1.DataSource as DataTable;
//Identify Row of datatable. and remove it
// DataRow dr = ---
ret.Rows.Remove(dr);
}
Your removing datarow from datatable, Where are you removing row from datagridview or rebinding datagridview?
Jignesh TrivediPosted May 21, 2012, 11:19 PM
If you populate datagrid reading XML, so you can also do First read xml using Dataset.readXML method and this dataset assign to data grid.
please refer
http://msdn.microsoft.com/en-us/library/system.data.dataset.readxml.aspx
http://support.microsoft.com/kb/311566
hope this will help you.
Jignesh TrivediPosted May 21, 2012, 5:20 AM
To do this remove Item from data source.
Example : I f you use datatable to bind datagrid than when user press delete button Identify this record and delete from datasource means datatable.
DataTable dt = GetData();dataGridView1.DataSource = dt;
private void btnDelete_Click(object sender, EventArgs e)
{
DataTable ret = dataGridView1.DataSource as DataTable;
//Identify Row of datatable. and remove it
// DataRow dr = ---
ret.Rows.Remove(dr);
}
hope this help.
EhteshamPosted May 21, 2012, 4:52 AM