Skip to content

Grouped selection support #2310

@LucaLindholm

Description

@LucaLindholm

Proposal: Grouped selection support

Summary

Support for Fluent styling for grouped selection between choices. This type of control could be used in combination with others to display different views of the same or similar data, such as in map interfaces to switch between driving/walking/biking options. This lets a user pick from multiple choices, similar to Segmented Control in iOS.

Rationale

  • provide a standardized horizontal selection UX
  • in combination with FlipView or other controls, provide support for scenarios that were previously using Pivot

Scope

Capability Priority
Horizontal selection of multiple options Must
Support horizontal orientation Must
Support vertical orientation Should
Support styling for a Pivot-like header Could

|
| Support styling for a group of buttons | Could |
| Multiple choice | Could |
| Every segment shall adapt to content width | Could |
| Limit the width of an item | Could |
| Respond to swipe on the control surface | Could |
| Overflow items into a dropdown menu | Could |
| Carousel items when resized | Could |
| Provide an area for content in the control itself | Won't |
| Take in data and display it differently based on selection | Won't |

Important Notes

@mdtauk created this mockup:
image

Mockups

Open Questions

  • In what scenarios would a user need to (and be able to tell from the control's design) that they can select multiple items?
  • Should each 'segment' adapt to content width, or all segments be limited to some default or developer-defined width?
  • How should resizing be handled: in a dropdown menu (like NavView) or carouseling (like Pivot)?
  • Could this be a restyle of RadioButtons? Likely not if we want to support multiple selection, swipe, carouseling, or other more complicated functionality

Metadata

Metadata

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions