We have a few columns which internally are stored as integers; they are essentially foreign keys in the database. To the user, we'd prefer to show a descriptive text instead of the value.
So far, we've accomplished this with an IEditorDataFilter, handling the OwnerToEditor conversion direction. This works, even for editing. There's just one catch: it's extremely slow. In particular, using the filter row on a column with this data filter, each typed in character can take tens of seconds to search.
In a branch, I've instead used an approach based on an unbound column. I.e., the original column is left as-is, and an additional column gets added that contains the user-friendly display texts. This is easily an order of magnitude faster. Still not quite as fast as I'd hoped, but a noticeable improvement. However, it presumably isn't what unbound columns were intended for, and there's probably a few kinks I'd have to work out, such as edit mode, and overriding the column chooser so the original column doesn't get shown.
Here, then, is my question:
is there A) something I'm missing to boost IEditorDataFilter? I assume it's calling Convert() for each and every row, comparing tons of values, when internally, I keep possible values in a dictionary; it'd be much more efficient to point the grid to that dict if I could.
or B) am I on the right track in eschewing it for an unbound column, which is faster but somewhat hackier?
Hello,
I am just checking about the progress of this issue. Let me know If you need my further assistance on this issue?
Thank you for using Infragistics Components.