web
You’re offline. This is a read only version of the page.
close
Skip to main content

Announcements

News and Announcements icon
Community site session details

Community site session details

Session Id :
Power Platform Community / Forums / Power Apps / Using Custom/Additiona...
Power Apps
Unanswered

Using Custom/Additional Icons in App Gallery

(0) ShareShare
ReportReport
Posted on by 473

I have a Gallery that displays the availability of each desk based on their booking status, via different colors.

However, I am exploring using my own icon because in PowerApps out-of-the-box icons, there is no "Chair" icon.

gymcode_0-1705486944260.png

 


I am aware there may be an issue setting the icon colors if I'm using my own icons, and am not sure if it is do-able if I switch to custom icons.

I would like to get advice on using custom icons, and it is worth the effort compared to what I have implemented so far.

Main Questions: 

1. Are there additional icon packs by Microsoft that I can import? If yes, do they behave the same with the Icons available in PowerApps?

2. Is there are no icon packs by Microsoft, is it possible/worth using custom icons, and how can I import them?
   a. Considerations: Icon color may not be changeable/clickable.

Thank you very much.

Categories:
I have the same question (0)
  • BCLS776 Profile Picture
    8,994 Moderator on at

    You can use the image control to use SVG icons in your app, of which there are many thousands available online. Or you can create your own. Matthew Devaney has a blog site with a bunch of them.

     

    Hope that helps,

    Bryan

  • Jiis Profile Picture
    254 Moderator on at

    iconify.design is a great place for SVG-s too, has endless icons, only thing is that you have to replace " with ' in the code, you can easily do that in the notepad, and put

     

     

    data(:)image/svg+xml, without the ()

     

    in the front of the code.

  • ruihaolrh Profile Picture
    473 on at

    Hi @BCLS776 , thanks for the suggestion. I looked up in the site too, but they don't have a chair icon for me.

    Hi @Jiis, I tried this method as well, but I realize that the icons doesn't have a "Color" option, and only Background Fill option is available, so I can't use the icons by default.

    gymcode_1-1705503681391.png



    After which,

    I then tried to create my own png icon, where I manually applied white background around and set transparency only for the insides of the chair icon, and Inserted it as a Image file.

    But for some reason, there is this border around the image when I set the Fill color to the image (color option is not available), which I am certain I have removed all transparency around it.

    gymcode_0-1705503658887.png


    Furthermore, in a Gallery, which is the location which I want to replace the icons, it doesn't allow me to select custom icons outside of the selection:

    gymcode_2-1705503883676.png

  • BCLS776 Profile Picture
    8,994 Moderator on at

    An SVG is more performant than a PNG image in your app, so I encourage you to use them whenever possible. Colors can be edited in the SVG code itself by looking for hex color codes and modifying those, e.g. #000000

     

    Bryan

  • ruihaolrh Profile Picture
    473 on at

    Hi @BCLS776 , thank you for the suggestions.

    May I know if the custom SVG icons can be used in a Gallery?

    I tried replacing Icon field in Gallery.Icon variable, which originally was 'Icon.Laptop' for example, with the SVG code, but it don't seem to work out.

    gymcode_0-1705626587649.png

    gymcode_1-1705626706255.png

     

  • BCLS776 Profile Picture
    8,994 Moderator on at

    Rather than replacing the icon code in an icon control, try inserting an image control and use the SVG code in that. You can resize the image to the same size as the icon, and it has an OnSelect property if you need it.

     

    Bryan

  • ruihaolrh Profile Picture
    473 on at

    Hi @BCLS776 , noted on your suggestion to use the icon and configuring it's properties, such as 'OnSelect'.

    However, the icons displayed in my Gallery represents a collection of 'Desk" entity records, which their label and color displayed is according to their data in each entity record (green if available, red if booked).

    gymcode_1-1705627666470.png

     

    gymcode_0-1705627341408.png


    Therefore, I am unable to replace the icons directly from 'Gallery-Icon' to 'image-controls'

    In such scenario, do you have an idea of any possibilities of implementing this?

    Thank you.

  • BCLS776 Profile Picture
    8,994 Moderator on at

    You can still change the color of the SVG using conditional logic. Inside the SVG code you'll notice some hex color codes (#000000) that contain 6 numbers or letters A-F. By conditionally controlling those values, you can alter the color produced in the SVG.

     

    Bryan

  • Tom Bishop Profile Picture
    17 on at
    Let me answer your questions directly:
     
    1. Are there additional icon packs by Microsoft that I can import? If yes, do they behave the same with the Icons available in PowerApps?
     
    No, you cannot import icons to Power Apps.

    2. Is there are no icon packs by Microsoft, is it possible/worth using custom icons, and how can I import them?
       a. Considerations: Icon color may not be changeable/clickable.
     
    It is not possible to add icons to either the Icons list under the Insert menu item, or to the icon property panel used by the icon and button controls.
    It is, as several people have noted, to use small iconlike images in your app. SVG images are recommended because they are small and they look good at all sizes.
    However, you cannot assign these using the icon property of any control.
     
    If a "chair" image works for the OP, using the image control and an external SVG would be usable.
     
    As mentioned, it's not possible to add an external image to a button. The image control has an "OnSelect" property, but the cursor does not change to the pointer on hover. It's possible to combine controls to mimic the look and functionality of a button. For example, a transparent button on top of an image provides the "OnSelect" and cursor change. If you need a tooltip on hover, use the Classic button control.
     
    If the image/button combination is going to be used often, I recommend creating a custom component.
     
    In several of my solutions, I use external SVGs quite heavily. To make this easer, I created a table called "Source_Images". Source Images has two columns: Image_Name and SVG. The SVG column contains the raw SVG data. It is not formatted for use by Power Apps, i.e., it doesn't have the 
    "data:image/svg+xml;utf8," prefix. I did it this way because I also use this table to generate SVG files via Power Automate for other needs. 
    When I need an image, I do a LookUp on the table to get the SVG code, then concatenate the prefix and URL encoded (via EncodeURL()) SVG data.
     
    To Illustrate, I have this "Add" image in my table: 
     
     
    Image Name
    SVG
    Add
    <svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M11.75 3a.75.75 0 0 1 .743.648l.007.102.001 7.25h7.253a.75.75 0 0 1 .102 1.493l-.102.007h-7.253l.002 7.25a.75.75 0 0 1-1.493.101l-.007-.102-.002-7.249H3.752a.75.75 0 0 1-.102-1.493L3.752 11h7.25L11 3.75a.75.75 0 0 1 .75-.75Z" fill="#000000"/></svg>
     
    This works well for generating images but will not work as the "Image" property. To get an image that Power Apps will display, we have to add the prefix and EncodeUrl the SVG.  A formula to do this would look like:
     
    Concatenate("data:image/svg+xml;utf8,",EncodeUrl(LookUp('Source_Images',Image_Name = "Add").SVG))
     
    If desired, you could add a third column to Source_Images to hold the result of this formula and avoid the concatenation.
     
    To change the color of the image, replace the 000000 in fill="#000000" with the desired hex color before encoding the SVG string.
     
    I don't like having to do a database lookup every time I need an image, so I have a named formula in my app formulas that defines all the images that I intend to use in my app. I define and cache the images on app initiation so that they are all available.
     
    If anyone wants the example code for how I define and cache images, let me know and I'll share it. I can also talk about creating custom components if desired.
     
    FYI, Fluent 1.0 icons (including the SVG) are available here: https://fluenticons.co/outlined/
       Fluent 2.0, Lucent, Material, and Bootstrap icons (including the SVG) are available here: https://www.powericons.dev/
       FontAwesome provides the SVG for all their icons too at https://fontawesome.com
     
    To change the color of the image, replace the 000000 in fill="#000000" with the desired hex color before encoding the SVG string.
     
    Here's an example of an app that uses the database driven images on a page using custom components to build what I call "Story Buttons", e.g., "Create a new role". It's very simple, 
     
     
     
     
     
    The form to add a new role shows a more standard save button:
     
     
    Thanks for reading this waaaaaayyy too long response!
     
     
     

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Introducing the 2026 Season 1 community Super Users

Congratulations to our 2026 Super Users!

Kudos to our 2025 Community Spotlight Honorees

Congratulations to our 2025 community superstars!

Congratulations to the March Top 10 Community Leaders!

These are the community rock stars!

Leaderboard > Power Apps

#1
Vish WR Profile Picture

Vish WR 936

#2
Valantis Profile Picture

Valantis 602

#3
11manish Profile Picture

11manish 598

Last 30 days Overall leaderboard