We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy. Image for the cookie policy date

Floating cell text is hidden when DataProvider is changed

I have found the following issue, which I believe is a bug in version 2.1.0.9 of the Essential Grid. When using a custom DataProvider object with the grid, and the number of columns is increased by changing the data provider, floating cells are incorrectly drawn when you click on them. As far as I can tell from the docs, the only thing that is necessary after changing the DataProvider is to call the ResetVolatileData method. However, doing this does not fix the problem. I have attached a ZIP file that demonstrates this problem. To reproduce: 1. Run the attached application 2. Click on cell D1, which is the right side of a floating cell. The application behaves as expected, the text in D1 is still displayed. 3. Click the "Switch" button, which resets the DataProvider to a different object and resets the volatile data 4. Click on cell C1, which is again the right side of a floating cell. In this case the text disappears from the grid. Clicking elsewhere (like cell B1) will replace the text. I have also noticed that creating a new grid each time, rather than just replacing the DataProvider will cause this bug to go away, so it must be related to something that happens when the DataProvider is changed. Is there a workaround or fix in a newer version of the grid? GridFloatingCells_2513.zip GridFloatingCells_9070.zip

1 Reply

AD Administrator Syncfusion Team November 30, 2004 11:11 AM

Hi Greg, thanks for reporting this problem. We were not aware of it and it has not been fixed. We will work on that. To workaround it do the following: private void btnSet_Click(object sender, System.EventArgs e) { _gridView.ResetVolatileData(); if (_useProvider1) { _dp = new DataProvider2(); _gridView.Model.DataProvider = _dp; } else { _dp = new DataProvider1(); _gridView.Model.DataProvider = _dp; } _useProvider1 = !_useProvider1; _gridView.FloatCellsMode = GridFloatCellsMode.None; _gridView.FloatCellsMode = GridFloatCellsMode.BeforeDisplayCalculation; _gridView.FloatingCells.EvaluateFloatingCells(GridRangeInfo.Table()); _gridView.Refresh(); } Temporarily setting _gridView.FloatCellsMode = GridFloatCellsMode.None; will clear out the float cell pool with its cache. Stefan

Loader.
Live Chat Icon For mobile
Up arrow icon