Status: Public Preview — behaviour may change.
What it does
Shows several people or entities as a compact row of avatars, with an overflow list for the ones that don't fit. Good for reviewers, owners and team members on a record. You supply names, images and status values; the control looks nothing up.
Key facts
- Bind Items to a table, then map columns with ItemName, ItemImage, ItemInitials, ItemPresence, ItemColor and ItemTooltip. Defaults assume lower-case column names (
name,image,presence,color), so map them explicitly if yours differ. - Images fall back to initials, then to a generic avatar. Initials come from the name unless ItemInitials is set.
- ItemPresence is a string: available, away, busy, do-not-disturb, offline, out-of-office, blocked or unknown. Blank or unsupported values show no badge. That differs from the Persona control, which uses an enum.
- ItemColor takes a named colour string such as "red" or "gold", not a Power Fx colour. Blank or unsupported falls back to Appearance.
- Layout is Stack (overlapping, the default) or Spread. MaxInlineItems defaults to 5, and available width can reduce it. The overflow list pages in 20s.
- AvatarSize defaults to 32 (48 on phone). Values between the supported sizes round down.
- One selected record only, exposed as Selected. Selecting inside the overflow list works too. Event order is Selected update, OnSelect, then OnChange, so put the action in one of them, not both.
- View and Disabled display modes stop the overflow list opening.
When to use / skip
Use it where a record has a handful of people attached and you want them visible without a gallery. It's a display control with a click handler, not a people picker.
Skip it for multi-select, for anything where the overflow content is essential on read-only screens, or where you expect live presence. There isn't any.
Configuration decisions
- Where the names, photos and statuses come from (Office365Users, a Dataverse lookup, a collection) and who refreshes them.
- Whether to show presence at all, given you're feeding it by hand.
- Stack or Spread, and a MaxInlineItems that works at the narrowest width the app will run.
- What a click does: open a profile, filter the screen or nothing.
Gotchas
- Presence is as stale as the data you give it. Users read a green badge as "online now".
- A badge string with different casing or spacing from the list above shows nothing, with no warning.
- Raising Gap in Spread layout pushes avatars into overflow.
- Photos from Office 365 Users need a lookup per person; doing that per item in the formula is slow with more than a few people. Build the collection once.
Consultant notes
- Build the people collection on screen load and refresh it deliberately. Calling a connector inside the Items formula is a performance and throttling problem waiting to happen.
- If the stakeholders want live Teams presence, say early that this control won't give it to you.
- Test with names that produce awkward initials, and with people who have no photo. The fallback looks fine in the demo only if you tried it.
Revisit at GA; the property set is still settling.