Your Privacy Matters: We use our own and third-party cookies to improve your experience on our website. By continuing to use the website we understand that you accept their use. Cookie Policy
785
Grid cell Error Indicator not showing immediately
posted

I have the UltraGrid (v 9.1) bound to a BindingList<T>.  My binding list has also implemented INotifyPropertyChanged - it will pass any property changes gathered from the contained items up and out of the collection.  The bound item implements IDataErrorInfo and INotifyPropertyChanged.  

I validate the collection when a button is pressed.  When the button is pressed, I walk the collection (not the grid), setting the properties that are in error as being "property changed" with the property name and then set its error string (returned by IDataErrorInfo).  Therefore the grid should know each and every row that is modified and the exact cell/property that gets modified.

This all works great with one exception.  Not all of my error indicators will show up _immediately_.  The ones that are in error and do not repaint properly seem to show up when the cell is queried by the grid again.  Specifically, I can have two rows in error (each with two cells).  The first row will have its error indicator show up in the first cell as it should.  The second row's error indicator will not show up in the first cell until which time I move the mouse over the second row.  This tells me that the grid is not fully querying the collection to find out each and every row in error.

What have I missed or put another way how can I work around this issue?  Grid.Invalidate() will not work as that would be too easy <grin>.

 

Parents Reply Children
No Data