I have an ultraWinGrid with a bindingSource (bound to an object graph) bound to it. This means also the use of multiple bands.
In the background, the content of the object graph is modified. The value of a property is assigned after doing some work on a background thread.
Is there an event that can detect this change (and gives the row as an argument)?
Otherwise I have to loop through the grid each time I change the object. Which isn't that performant.
Kind regards
Hello,
If your classes implements INotifyPropertyChanged interface, grid will be notified when data was changed and will update its interface automatically. More information about this interface you will find on the following link:
http://msdn.microsoft.com/en-us/library/vstudio/ms229614%28v=vs.100%29.aspx
Also for the collection which you are using for your sub- bands must be of BindingList<T>, because this generic collection notifies bounded object when there is change in the collection.
Please let me know if you have any further questions.
It is indeed as you say, the classes implements an INotifyProperty changed. And the property which is changed, is well shown in the grid.
But when the change happens, I also want to set a custom tooltip. And I want to set the tooltip without crawling the whole grid if possible.
Kind regards.
Sounds like you should just use the grid's InitializeRow event and set the ToolTipText on the cell.
Mike,
You were right. The event to use is indeed the InitializeRow event.
The reason it wasn't working in my application was:
I changed the value in a hidden property of my object graph, but I forgot to raise the property changed event.
The other properties (which are visible on the grid) did raise the property changed event in the setter. And were showing correctly in the grid.
Thanks for your support.
Kind regards,
Erik