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

Best way to implement the following...

Hi everyone, Here’s what I’m trying to implement: -The grid is basically a canvas onto which the user can drop various objects -These objects are bound to a multidimensional data source. There can be multiple objects bound to multiple such data sources on the canvas. -The objects will “own” a block of cells. When the object changes, it will also change the cells in the block it owns. Here are some questions on which I need expert advice: -Is there a better way to “bind” a cell to a data source? I know that there is support for data binding but I don’t know if it will work for an OLAP data source and there may be multiple data sources in my implementation. -What’s the best way to treat a block of cells as an entity? Is there a way I can leverage the work you guys put into covered ranges but extend it to do the following: -Render the contents of all the cells in the covered range, not just the top-left cell -Cut/copy should only work on the whole block. Same for drag-drop -Prevent insertions/deletions of rows/columns into the block -What’s the best way to have an object “own” a range of cells? The hardest part seems to be keeping the object’s reference in sync when the user cuts/copies or drag-drops the owned range. I thought I could just give the object a styleinfo or gridrangeinfo but I found out that the cell reference of those objects doesn’t get updated after those operations. I’m sorry for the lengthy post and numerous questions. I just want to use the best approach so I’m working with the grid and not against it. Thanks!

1 Reply

AD Administrator Syncfusion Team November 8, 2005 04:47 PM UTC

<<-Is there a better way to “bind” a cell to a data source? I know that there is support for data binding but I don’t know if it will work for an OLAP data source and there may be multiple data sources in my implementation. >> Using a virtual GridControl gives you the greatest flexibility in binding multiple data sources to various grid cells. It does require you to completely manage the data associated with the grid. The virtual grid is just a display onto your data in this case. <<-What’s the best way to treat a block of cells as an entity? Is there a way I can leverage the work you guys put into covered ranges but extend it to do the following: -Render the contents of all the cells in the covered range, not just the top-left cell -Cut/copy should only work on the whole block. Same for drag-drop -Prevent insertions/deletions of rows/columns into the block -What’s the best way to have an object “own” a range of cells? The hardest part seems to be keeping the object’s reference in sync when the user cuts/copies or drag-drops the owned range. I thought I could just give the object a styleinfo or gridrangeinfo but I found out that the cell reference of those objects doesn’t get updated after those operations. >> One potential solution is to use another grid inside the covered cells as in \3.3.0.0\Windows\Grid.Windows\Samples\In Depth\GridInCells. There are some restriction on trying to use this techique. It does not work well if you are trying to nest the grid to more than one level. It also may have performanace problems if you are trying to display a lot of these types of covered cells. It is hard to quantify what a lot means here. The best thing would be to try to mock up a text case and see if the performance meets your needs. If the ''main'' grid is a GridControl, you can set the ''inner grids'' as the style.Tag values for the top-left cell of each covered range in the outer grid. This would effectively tie each inner grid to a specific covered range. Each inner grid would hold and manage what ever data you put into it.

Loader.
Live Chat Icon For mobile
Up arrow icon