I am currently learning the differences from Visual Webgui to Wisej. One of my projects uses a large grid with approximately 60 columns. I created a very simple dataset with fields that would be used in the real application. I set the datasource of the grid to the dataset, no problem. The fun started when I created possibly more columns than the visible design surface. I expanded the grid in design view to accommodate. When I ran the application, the order of the columns changed to the design. I could then close the application and inspect the order of the columns, and no change. Is there a method to ensure columns are locked according to the original design.
Yep, the problem is the sorting by display index. When it’s all -1 (the default), the order is scrambled since we use List<>.Sort() which uses quick sort which is an “unstable” sort and items with identical values are not guaranteed to keep their order. My guess is that below a certain number quick sort is stable.
Anyway, it’s fixed in the upcoming update.
I just noticed the sample I sent saved the columns in the changed order. The correct order should be idcode, jobid, lastname, firstname, trade, mobile, airport etc. If you use the designer to change the order, it will revert back to a different order. This behavior only occurs once you have more columns than the visible grid.