cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Dannyw0ah
Level: Powered On

Create a Browsegallery containing other browsegalleries

So, being brand new to Powerapps, coming from a Xamarin and Android developer background, I have a problem with how to implement an aspect that I want in my app.

 

I have a sharepoint with several lists, I want all these lists available in my app. However I want to group them by "Category" so to speak. I have created a landing screen where I want the "Categories" to be in and I want the items in this browsegallery to lead to their related lists (also browsegalleries).

So: "CategoryList" is created from the screens of browsegalleries that are in the app. And when I click a "CategoryList item", I am navigated to the items related browsegallery.

Sort of: CategoryListItem.onClick(Navigate(this.Title)) or something along those lines.

 

If I create a CategoryList and populate the items from a separate Sharepoint list that contains just titles or headers for the items, I still cannot bind the individual items navigation destinations. If i add "Navigate('exampleList'; none)" It is applied to all items in that list. So all items navigate to the same place. 

 

How do I dynamically build browse galleries with navigation parameters to desired locations?

1 REPLY 1
TimRohr
Level 10

Re: Create a Browsegallery containing other browsegalleries

If I understand you correctly, this is a super interesting question... I ran into something similar and searched and searched for an answer because, you're right: this is how we are taught as developers to think about app navigation.

 

Here is the workaround I found (and I apoligize that I can't find the original link to credit the person who suggested this)...

 

You can provide the destination screen argument to your Navigate() statement from a dropdown list. The reason is that if you name a column in the DropDown list to be "Screen", PowerApps intelligently interprets that to be a screen in your app.

 

So if you had a dropdown with items structured as:

{Text: yourDisplayText, Screen: yourScreenName}

...you could click on an item, and then use the Screen field as the name of your destination screen for your Navigate() statement.

Navigate(DropDown1.Screen, none)

So, for your application, you could populate a DropDown with the Screens in your app, then set the Default property of the DropDown to match a field from your datasource indicating the navigation destination... and set the Visible property to false. Since you're doing it in a Gallery, it will automatically set itself for each record independently.

 

Post back if you have trouble.