DevExpress XtraGrid won't show entire cell content

1.7k Views Asked by At

We have a grid setup that has a column which can contain very large values but the grid itself isn't very tall. When the contents of the cell are longer then the grid is tall we can't scroll to see the rest of the contents. I've forced the scroll bar to appear and it does allow you to scroll down but it doesn't change the content and show you the lower part of the message.

Has anyone ran into this before?

2

There are 2 best solutions below

0
On BEST ANSWER

Unfortunately Shane this is the sacrifice for a Grid that can handle millions of rows efficiently. The XtraGrid handles it's view on a Row by Row basis, the behavior you describe is by design, as you scroll the XtraGrid is moving the next row up to the Top position, when you have large cells this will mean that you won't see anything change with the Grid Layout but instead only the data in the cells changing.

Please see http://www.devexpress.com/Support/Center/p/S131103.aspx which is confirmation from DX on this behavior. Due to how the XtraGrid was designed this doesn't appear to be something that DX can change without a rewrite of alot of the XtraGrid. But again this does allow the XtraGrid to be highly performant with large datasets, albeit with a "clunky" scrolling experience.

0
On

I have not seen the specific behavior you describe, but can suggest a workaround.

There is a property in the GridView called OptionHint.ShowCellHints.

When this is True, the full content of a cell can be seen in a popup ToolTip style box when the users hover the cursor over the cell. This defaults to True, so it should already be working, unless you changed it to False.

There is also a property that enables autosizing of row heights, depending on cell content. I think it's something like AutoRowHeight, but a quick scan of the property page did not turn it up.

Finally, you could ask the DevExpress support team. Their tech support is really exceptional, and they will respond within one business day.