Hey guys I have a grid that was working fine until some hours ago, we have a change manager system and I tried to look for recent changes on those files but I didn't find anything meaningful.
The grid's error event is firing with the following message:
Unable to retrieve cell value. PropertyDescriptor.GetValue call failed. This may happen for variety of reasons. One possible cause may be that the UltraGridRow's list object may be out of sync with the underlying data list. This can occur if the underlying data list fails to raise proper events notifying the bound controls (UltraGrid) of change in the data list. If you are using a custom IList data source, try implementing IBindingList interface on the data list and raising ListChanged event appropriately. If the data list already implements IBindingList then it may be failing to raise proper notifications. You can also try calling RowsCollection.Refresh on the grid's rows collection to synchronize the grid's list objects with the data lists. Note that the UltraGrid will continue operating normally.
I'm using IList objects since I use reflection to dynamically load lists of different type of objects to the same grid.
Any help would be appreciated,
I just received that same error message (although it was happening when I clicked into a new row - it displayed existing rows just fine). My grid was also displaying a List of objects.
It turns out one of the properties (that it was trying to display) of the object had a divide by zero error in it. Rather than display this divide by zero error, I was getting that ugly (infragistics) error. I had to hide the fields one by one to work out what was doing it...
Hey guys,
After looking for hours the source files one of my co-workers noticed there was a change in the app.manifest file:
The PermissionSet section was modified, the Unrestricted="true" attribute was removed.
it used to look like this:
<PermissionSet class="System.Security.PermissionSet" version="1" Unrestricted="true" ID="Custom" SameSite="site">
and now it was like this:
<PermissionSet class="System.Security.PermissionSet" version="1" ID="Custom" SameSite="site">
after some research we found out this change was made by changing one setting in the Security tab in the Project properties. This setting was the "trust" and it was changed from "This is a full trust application" to "This is a partial trust application".
Long story short, this changed affected the code that was using reflection to grab de properties values from the underlying datasource (IList).
The interesting thing was that the UltraGrid Error event was "wraping/catching" the inner exception originated in a custom control (ObjectBindingSource) I was using to grab the properties from the underlying datasource making it very difficult to find where the real problem was. After adding the source code of this custom control to the app I was able to debug it and see that the exception being thrown was the following:
System.Security. VerificationException: Operation could destabilize the runtime
Anyway, the error returned by the grid was a bit misleading for me.
I hope this helps someone else.