AD
Administrator
Syncfusion Team
August 2, 2005 05:05 PM UTC
What version of our libraries are you using?
There are two properties that you can try various combinations of setting to see if they will avoid the problem you are seeing. They are:
this.gridDataBoundGrid1.OptimizeInsertRemoveCells = false;
this.gridDataBoundGrid1.UseListChangedEvent = false;
Try these settings first. And then try them both true. And then mix their values.
SK
Santha Kumar
August 3, 2005 09:42 AM UTC
Library version are
Version 3.201.1.0
Runtime Version v1.1.4322
As you had mentioned, I tried for two properties (OptimizeInsertRemoveCells & UseListChangedEvent) with various combination. But I could not get the desired result.
For e.g..
In the grid, there are 3 columns. 1st column is combo box, 2nd and 3rd are textbox. There are 4 rows in the grid. When user try to delete (using delete key) the first row, he is able to delete the first row successfully. At the same time, combobox value in the 2nd row is getting cleard.
We tried the following as a workaroud. In the ROWSDELETED event handler, we set the focus to another control in the form. Then we found that it was not clearing the combobox value in the 2nd row. So observation is when the grid loses its focus, existing value is retained in the combobox.
Note: When we try to use the delete row provided by the grid (right click the row header of grid), it is deleting the only the selected record.
Let me know any workaround for this
Regards,
Santha Kumar N.
AD
Administrator
Syncfusion Team
August 3, 2005 11:15 AM UTC
How are you deleting the row if you are not clicking the row header and pressing the delete key?
Can you tell me how to see the problem in this sample?
http://www.syncfusion.com/Support/user/uploads/GDBG_DeleteRows_35ef932d.zip
SK
Santha Kumar
August 3, 2005 11:48 AM UTC
We are selecting the row header and pressing the delete key in the keyboard.
AD
Administrator
Syncfusion Team
August 3, 2005 12:11 PM UTC
Can you tell me how to see the problem in the sample I uploaded? In that sample, for me if I click the row header and press delete, nothing happens to any of the comboboxes that are left.
SK
Santha Kumar
August 3, 2005 02:40 PM UTC
we are unable to simulate the same problem with the sample you have sent and it is working fine.
We are unable to trace the problem in our application. therefore we would like to know the properties of the grid which has to be set to ensure that only selected row is getting deleted.
AD
Administrator
Syncfusion Team
August 3, 2005 03:23 PM UTC
My best guess is that this in not a property problem, but is more likely an event problem. What grid events are you handling? If you comment out these events, does the problem go away.
As far as properties to check, do you have anything set readonly? Does your datasource support editing and deleting the records?
Are there any exceptions being thrown as you delete the record? (Set your debugger to break on exception.)
SK
Santha Kumar
August 3, 2005 03:47 PM UTC
These are the events used in the grid
1.CurrentCellControlDoubleClick
2.CurrentCellEditingComplete
3.CurrentCellValidateString
4.DoubleClick
Yes, my datasource support editing and deleting records.
No exceptions is thrown when we press delete key.
AD
Administrator
Syncfusion Team
August 3, 2005 04:18 PM UTC
What happens when you comment out these events? Does clicking a header and pressing delete work as expected?
If so, add the events back one at the time until you find the one that is causing the problem.
SK
Santha Kumar
August 4, 2005 08:36 AM UTC
As you told, we commented the events related to grid and tested. We are getting the same problem (After deletion combobox in the next row getting cleared.)
AD
Administrator
Syncfusion Team
August 4, 2005 09:25 AM UTC
If you can provide us with a sample project that we can debug, we can try to spot what is causing this behavior here.
There will be a new release 3.3 release out shortly. If you want to try this release, you can wait a few days, and get the posted download when it becomes available. If you would like to try it before then, submit a Direct Trac support incident, and we can provide you with a link to download one of our nightly builds for that release.
AD
Administrator
Syncfusion Team
August 9, 2005 04:25 PM UTC
I am seeing a similar problem. When you press delete then the first column of the next row becomes selected instead of the zero column so if you press delete again and it is a combobox the value is removed.
I added a rowsdelete event handler and tried setting the currentcell to move to the zero column of the current row and the code excutes however the first column is still the current cell instead of column zero.
AD
Administrator
Syncfusion Team
August 9, 2005 04:41 PM UTC
Can you modify the sample I posted above to show this problem? Or can you upload a sample showing this problem? If so, I am sure we can get it resolved.
AD
Administrator
Syncfusion Team
August 9, 2005 04:56 PM UTC
The problem is simple to reproduce in the sample. Select a row header (column zero). Press delete. Now press delete again. The first columns is deleted not the row. Add in the rowsdeleted handler and the following code:
private void gridDataBoundGrid1_RowsDeleted(object sender, Syncfusion.Windows.Forms.Grid.GridRowRangeEventArgs e)
{
GridCurrentCell cc = this.gridDataBoundGrid1.CurrentCell;
cc.MoveTo(cc.RowIndex, 0);
}
and it will still ocurr.
AD
Administrator
Syncfusion Team
August 9, 2005 05:19 PM UTC
Try selecting the row instead of moving the currentcell.
private void gridDataBoundGrid1_RowsDeleted(object sender, GridRowRangeEventArgs e)
{
this.gridDataBoundGrid1.Selections.SelectRange(GridRangeInfo.Row(e.From), true);
}
AD
Administrator
Syncfusion Team
August 9, 2005 06:05 PM UTC
Works great, only shouldn''t that be the default behavior?
AD
Administrator
Syncfusion Team
August 9, 2005 06:40 PM UTC
If you have this.gridDataBoundGrid1.ListBoxSelectionMode set to something other than None, the row will be selected by default. But without this setting, the row is not selected.