For anyone reading this, what I wanted to do was change an icon using a text name. Gemnini struggled to answer this. I finally remembered the prefix I had seen somewhere and let Gemini know. Here is the AI summary of what to do if you want to change the icon to be displayed using a text name, which will commonly be convenient, especially if creating a gallery.
Here is the AI list of classic icons
[ "Add", "AddLibrary", "AddUser", "Adjust", "Airplane", "Archive", "Assembly", "Asset", "Assistant",
"Attach", "Back", "BackToWindow", "Badge", "Balloon", "Barcode", "BarcodeScanner", "Battery",
"Book", "Bookmark", "Briefcase", "Calculator", "Calendar", "Camera", "Cancel", "Certificate",
"Chart", "Check", "CheckBadge", "ChevronDown", "ChevronLeft", "ChevronRight", "ChevronUp",
"Circle", "Clock", "Cloud", "Code", "Collapse", "ColorFiller", "Comment", "Compass", "Computer",
"Contact", "Copy", "Crop", "Database", "Desktop", "Details", "Directions", "Document",
"DocumentLibrary", "Download", "Edit", "Emoji", "Erase", "Error", "Expand", "Export",
"ExternalLink", "Filter", "Flag", "Folder", "Forward", "Globe", "Grid", "Group", "History",
"Home", "Image", "Import", "Information", "InplaceEdit", "Journal", "Key", "Laptop",
"Layers", "Layout", "Link", "List", "Lock", "LogJournal", "Mail", "Map", "Meeting", "Menu",
"Message", "Mic", "Mobile", "Money", "More", "Music", "Next", "Note", "Notification", "Open",
"Outgoing", "Paperclip", "Pause", "People", "Person", "Phone", "Pin", "Play", "Power",
"Presentation", "Print", "PurchaseOrder", "Question", "Receipt", "Redo", "Reload", "Remove",
"Repair", "Save", "Search", "Send", "Settings", "Share", "Shield", "ShoppingBag", "ShoppingCart",
"Star", "Status", "Stop", "Subscribe", "Table", "Tag", "Target", "Ticket", "Timeline",
"Tools", "Trash", "Trending", "Trophy", "Truck", "Undo", "Unlock", "Upload", "User", "Video",
"View", "Volume", "Warning", "Website", "WiFi", "Work", "World", "ZoomIn", "ZoomOut" ]
Spot on. You are absolutely correct, and I appreciate the nudge to get specific on that exact string literal.
When you are treating the Icon property as a string—specifically when building dynamic galleries or components—the prefix "builtinicon:" is the secret sauce that allows PowerApps to resolve a text string into a rendered classic icon.
Why "builtinicon:" is the move
Using the Icon.Name enum is fine for static logic, but as you’ve identified, it fails when you're trying to drive an icon's appearance via data (like a column in a table or a Gallery). By concatenating that prefix, you bypass the need for a massive Switch() statement.
How it looks in practice:
If your Gallery Items property is ["Add", "Cancel", "Search", "ChevronDown"], your Icon control's property would be:
$"builtinicon:{ThisItem.Value}"
Implementation Table
To make sure the "properly cased" names match what the engine expects, here is a quick reference for common icons using your logic:
| User-Friendly Name |
Resulting String Value |
| Add |
builtinicon:Add |
| ChevronDown |
builtinicon:ChevronDown |
| Filter |
builtinicon:Filter |
| Trash |
builtinicon:Trash |
| Edit |
builtinicon:Edit |
Important Caveat: Case Sensitivity
Since you mentioned using the name "as displayed in the icon select drop down," keep in mind that the engine is case-sensitive for this specific string method.
Pro-Tip: If you are pulling these names from a source where the casing might be messy, you can't easily Proper() your way out of it because ChevronDown has two capitals. It’s best to keep your data source strictly aligned with the PowerApps internal naming convention.