WinForms Data Grid Master-Detail Mode - Performance and UX Enhancements (Coming soon in v16.1)

Thinking Out Loud
24 May 2016

Displaying master-detail relationships on a form in a creative/functional manner can be a tricky proposition. Many of you rely upon our WinForms Grid Control and its Master-Detail View to do the heavy lifting in this regard. Though a great option, over the years, we've heard from many of you about usability issues related to the use of multiple scrollbars for each individual data level. The good news is that we've addressed this issue in v16.1 with a new UI option...

WinForms Data Grid - Single Vertical Scrollbar for Multiple Views

With our updated Master-Detail View, we give you the ability to navigate all records (master-detail) within the grid using a single vertical scrollbar. With this new behavior, your UI should be more straightforward when presenting complex data relationships within a single grid container. As you'd expect, this new scrollbar mode is an option - should you prefer the classic approach to vertical scrolling, you are free to continue its use.


As I mentioned earlier in this blog post, displaying master-detail information inside a single grid can get tricky and it's quite easy to confuse end-users. Going to a single master-detail scrollbar will help address some of the usability issues our customers have reported to us, but we've also done our best to clean up the UI to help reduce friction. We now display only one Indicator through all views and have reduced visual noise (including improved detail tabs) where possible.

For our longtime Grid users: At this time, this new scrolling mode cannot be used for the LayoutView, TileView, or WinExplorerView.


WinForms Data Grid - Performance Enhancements

Our focus in this release cycle was not restricted to usability issues. Performance was on our mind and in that context, the algorithms responsible for calculating the layout of Master-Detail Views was re-worked so your apps can be more responsive than ever before. Additionally we've improved horizontal scrolling by optimizing scrolling bounds calculations and associated rendering code.


We'd love to hear your thoughts on the enhancements we've made to our WinForms Data Grid. Do you currently use our Grid in master-detail mode and if so, are you going to start using the single scrollbar mode in your next project? 

7 comment(s)
DIP_Michel
DIP_Michel

Exactly what I need. Just last week a customer complained about the two scrollbars.

24 May, 2016
Christopher Jay
Christopher Jay

Great work, guys.  This will really help some of our users.

24 May, 2016
Niels Lynge 1
Niels Lynge 1

How about showing Scrollbar Annotations where details are expanded, possible?

25 May, 2016
Arthur Ghukasyan
Arthur Ghukasyan

awesome!)

25 May, 2016
Crono
Crono

As happy as I am about this issue finally being solved (I have waited a long time for this!), I'm kind of worried about how deep you had to go regarding the grid's internal mechanics to be able to support this.

Over the years I had to implement workarounds of all kinds for the grid to work the way I want. Some of these workarounds involved deriving from the grid and / or using reflection.

I know (and understand) you can't guarantee subsequent versions of the grid to work with custom overrides, but I'd still like to ask: which members would be the most likely to cause a code break, should they've been overriden?

25 May, 2016
Martin Hart
Martin Hart

Now, that IS neat!

28 May, 2016
Tim dos Santos
Tim dos Santos

Now "just" go the extra mile (?) to allow PixelScrolling with this, and I'm happy ;)

Or, to put it differently, how does this work together with max'ed Detail Views (view.DetailHeight = Int32.MaxValue)? Will it in the near future be possible to combine max'ed DetailHeight with PixelScrolling to have the complete Grid smoothly scrolling? (I'd be happy with the restriction that for Master/Detail plus PixelScrolling, the DetailHeight would be FIXED at the maximum!)

Cheers

4 August, 2016

Please login or register to post comments.