Using the Power Apps Search Pane
The Power Apps Search Pane was a great addition to the Power Apps Maker Studio. This post, which pairs with Shane’s video on the subject, will cover the usage and capabilities of the tool. You’re going to learn how to use the Search Pane to find collections, variables, controls, formulas, components and many other elements throughout your apps. You’ll also learn how to filter your results, and even a bit about regular expressions (regex). We’re not going to get too crazy, but we just want to highlight this solid feature that makes troubleshooting and updating your app WAY easier!
Shane's YouTube Video on the Subject
Click the link to check out Shane Young's YouTube channel:
Where to find the Search Pane (1:30)
In Power Apps Studio, Create a new app. The Search Pane is ‘on’ by default for new apps, so you can quickly and easily find it, by looking on the left edge of the screen. The vertical column of icons serves as navigation to the various elements that make up your app. From the top-down there’s the hamburger menu icon used for expanding and collapsing the labels of these shortcuts. Below that is Tree view which shows your screens and all controls that have been added to those screens. Below Tree view you’ll find Insert, which is an alternate way to add controls to your app (the other being the + Insert button in the top toolbar that used to be the ribbon).
Next is the Data icon, where you go to add connectors for data sources. This is followed by Media where you can upload or delete pictures, videos and audio files to your app to use as elements. Next is the relatively new Power Automate button, which will allow you to build and update your Power Automate flows right within the app maker experience. Then you’ve got Advanced tools which contains tools for monitoring and testing/debugging your app.
Finally, at the bottom of this group of icons is the Search icon.
Doing a basic search (2:00)
With the Search pane open, type in a search term. The results will be broken down by the type of element where matches are found. So variables that contain your search term will not only be grouped together in the results as Variables, but Power Apps will also tell you whether the result is a Global variable or a Context (local) variable. It will go on to highlight results based on if they are Collections, Data sources, Media, Flows, Components or Screens.
Filtering search results (2:18)
Let’s say your search term returns hundreds of matches across all these categories. You can click the filter button beside the search box to change it so you’re only shown matches from your desired element type.
In that filter menu, you can also fine tune your search by making it match the case of how you typed the search term, or you can force it to match the whole word so it will only show results where your search term is present on its own, instead of the default behavior where results also contain matching words that are part of another word. For example, if my app has many elements with the word ‘test’ in them and I search for ‘test’, the default behavior would show me results like my data source “Security Test” as well as my “Law2TEST” data source. But if I turn on Match whole word, the only result would be “Security Test” because that’s the only data source that has ‘test’ by itself. And if I go one further and turn on Match case, it won’t show me any results, because the term I typed was all lower-case and none of my elements have the word ‘test’ as all lower-case.
Using search results (3:04)
In the list of results, clicking on a variable result will take you to its entry on the Variables screen, where you can then see the current value of the variable, as well as where it is defined and used throughout the app.
But what if your result is a collection? Clicking on a collection result takes you to the normal Collections screen which allows you to see the data inside the collection, but that’s not very helpful for finding where the collection is declared. But if you see a collection result, change your search term to the name of that collection result and see what happens.
Under the Screens results, you will see the Screen, control and property where the collection is being declared. Clicking on this result will take you straight to the formula where the collection is being built.
Using regular expressions (regex) for advanced searching (7:34)
The basic search in the Search Pane does not allow you to combine search elements. So you can’t type in “height Or width” and have it show you all results that are either ‘height’ or ‘width’. That doesn’t meant you’re dead in the water though. If you click on the filter button, the very bottom option on the menu is “Use regular expression”. By toggling on this filter setting, you can now enter regex syntax into your search box. So you could then type “height|width” which would give you results that match either ‘height’ or ‘width’. While understanding regex is outside the scope of this article, there will be a link to a page from Microsoft that explains it and provides examples of regex syntax.
If you need a little help figuring out regex, that'd be a great use of ChatGPT to help you form your queries. Don't know what that is? Check out our article on ways to use ChatGPT to help you!
What doesn’t it find? (6:08)
As we’ve become more familiar with the Search Pane, we have noticed some things that don’t show up in the results. I wouldn’t necessarily call these all limitations, but they are simply cases where your search term might be technically present in an app and not show up as a result.
For example, if my app has a Text input control and I put my app in Preview (Play) mode and then type ‘test’ into that text input control, that instance of the word ‘test’ will not show up in the search results. Similarly, the search tool will not look inside your variables/collections for your search terms. So if your variable or collection contains the word ‘test’ in its values, that won’t show up in the results.
During Shane’s video on this subject, he pointed out that the Search pane could not be used for bulk renaming/replacing of search term matches. In the time since that video was published, Microsoft has added the Replace function to the Search Pane as a tab right next to Find. In the Replace tab, you enter a search term and this time it will only search Variables, Collections and Screens (but you retain the fine-tuning options of Match case, Match whole word and Use regular expression). Then there is a text box below the search term where you type in the word or phrase you want to replace matches with. You’ll also notice that the search results in this tab have checkboxes next to them, so you can tell it to only replace the matching terms in some cases, but leave others alone. Pretty slick!
Also, at the time of the video, Search Pane was a Preview feature that was ‘on’ by default for new apps, but needed to be manually added to older apps. This is no longer the case. This Search Pane experience is now out of Preview and is present in all apps, regardless of when they were built.
Regular Expression 2 (re2.h) syntax (Microsoft Learn)