Hi All,I need to customise Win/UltraGrid so that it renders the layout shown in the attached screenshot. The key customisations of this layout, in what I believe to be ascending order of difficulty, are as follows:1) Extensive styling of cells within the 'Strike' column (differing for header and data cells), including thick vertical 'divider lines' along the sides of each cell.2) The Second column group header is customised to include a drop-down control.3) Row group headers are rendered & customised per column group.I've been making use of WPF extensively for the last few years, which makes such customisations easy. However, I need the performance of your WinForms grid, and would really appreciate some guidance as to whether and how the above can be achieved with WinGrid.Many thanks,James
This is more of a POC than an implementation of your requirements but it should help everyone with a starting point to discuss each aspect in more detail. A quick note on the drop down in the Strike header: there is no ability built-in to the grid today to allow editors within the child ui elements of the headers. This definitely sounds like something we should add as a feature to the grid and I'll let the appropriate people know... it's been asked for in the past. That said we can fake it for now by using the creation filter in the example application I've attached.
Let's use this as a starting point to build a more consistent POC to match your requirements. I threw this together quickly using the RowLayoutDesigner and a CreationFilter to get the combo over the appropriate header. To make a more precise POC I'd end up badgering you with a ton of questions about each part so let's start small and build it in parts until we have a POC that fulfills the requirements as you see them.
Hi Michael,Many thanks for your post. The screenshot I attached is of a closed-source 3rd party app. I would like to replicate the layout illustrated therein as closely as possible using a *single* WinGrid (I've tried a three-grid approach, but found it too 'seamful', and would like to avoid it).Firstly, with apologies, please disregard the thick red 'highlight' frames - these were simply drawn over the original screenshot.The only way I can envisage re-creating that layout in a single WinGrid is as follows. Firstly, define three column groups: one with 'Call' in the col group header, one with 'Put', and one (the first challenage) with a *drop-down list control* in the col group header. Secondly, WinGrid's rendering of its row group headers (in the screenshot, these are green-ish bars containing the caption 'AA Apr 2013 ...') would need customising - either by e.g. rendering a custom row group header *per column group*, or by dividing a single row group header into three col-group spanning regions that render conditionally. The final step would be adding the black dividers that run along either side of the Strike column group. I'm no expert, so this might be total nonsense; perhaps there's a really easy way to do it using scroll regions or something? I'm open to all suggestions.Hopefully this clarifies the objective. In short, I would like to replicate the layout seen in the screenshot in a single grid. If it can be done, it would be a truly amazing example of customisability :)Best regards,James
James,
Can you explain to me a few things about ths picture that you are showing here? Do you have three groups, one called "Call", another called "Put" and one in between that has a drop down in it? Is that what I see here? Or is the drop down placed in one of those two groups?
I understand you want to customise the column headers depending on what groups the columns belong to. But what is that inside the red rectangle? Is that a group header? Is that a cell in one of the grid rows? I'm not sure I understand what you mean here.
Hi Matthew,
Many thanks for your reply, and for your generous offer assist regarding WPF perf. However, we're now committed to using WinForms. We analysed most WPF grids on the market (yours being one of the best), however none could provide the desired scrolling speed (which needs to approach Excel-like speed/smoothness), given the rather antiquated workstations we'll be deploying to. On such hardware, the WPF visual tree is simply too heavy-duty for displaying large data sets (esp. with 100+ columns) - even when showing very simple data. Therefore, I would be profoundly grateful for guidance on this WinGrid query, as we do need to know if/how that layout can be achieved.Kind regards,James
Hi James,
I haven't had a chance to look into the layout questions of the WinGrid but I'm sure whether it is straight-forward or Creation/Draw Filter required, the desired layout can be achieved. I'm more curious about what performance hit the XamDataGrid caused that prompted the swap to WinForms. I've assisted with several trading applications over the years that used the wpf grid and while there were some hits in the beginning (several years ago) we ironed out those bumps and were able to squeeze some really nice performance out of the wpf grid. Are you using a current version or an older version? What is the specific performance experience you are seeing? If you aren't at liberty to discuss details here send me a note directly (mkraft@infragistics.com).