cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Super User
Super User

Select Item in Gallery OnSelect

When I insert a button into a Gallery, the OnSelect property of the button is automatically set to Select(Parent). I don't want a button in every row of my vertical Gallery. 

 

Instead I want user to click the row of the Gallery, then click a button outside the Gallery to execute OnSelect functions.

 

How do I reference a Gallery row and all its contents when clicked? 

 

Thanks

1 ACCEPTED SOLUTION

Accepted Solutions
Highlighted
Power Apps
Power Apps

Re: Select Item in Gallery OnSelect

In your case, you would have the gallery Items property set to your SharePoint list, then when you click the button outside that gallery, you would have an expression similar to the one below:

Navigate(
    EditScreen,
    ScreenTransition.Fade,
    { itemToEdit: Gallery1.Selected });
EditForm(EditForm1)

On the other screen, you would have the edit form control (called EditForm1) with the DataSource property set to the same SharePoint list, and the Item property set to 'itemToEdit'. When the user clicks the button, it will navigate to the second screen, passing to the context of that screen the value of the selected item in the gallery (in the variable called 'itemToEdit'). When that value is set as the Item property of the form, then the object properties will be displayed so that the user can continue filling the values for the properties.

View solution in original post

12 REPLIES 12
Power Apps
Power Apps

Re: Select Item in Gallery OnSelect

You cannot reference directly an arbitrary row in the gallery (*), but you can reference the selected row in that gallery via the Selected property.

 

Take a look at the attached app; the Selected property in the gallery contains the entire object that is bound to that row, so you can access its properties outside the gallery.

 

(*) You can also access an arbitrary row in the gallery (by index) using the AllItems property of the gallery, and the FirstN/Last functions to retrieve the item at the desired index.

Super User
Super User

Re: Select Item in Gallery OnSelect

Thank you @CarlosFigueira. When trying to import the app you sent I get: 

 

2018-07-02_10-26-03.png

Power Apps
Power Apps

Re: Select Item in Gallery OnSelect

I saved the app as a .msapp file and compressed it. If you uncompress it, then open that file, you should be able to see it.

Super User
Super User

Re: Select Item in Gallery OnSelect

Hm. Yeah I associated .msapp files with VS Code because I was dissecting / debugging them. I'm not sure how to reassociated them with PowerApps as its a web app and not stored locally (that I know of). 

 

I can't seem to use "Open With" and select PowerApps as I can't find it on my local machine. 

Power Apps
Power Apps

Re: Select Item in Gallery OnSelect

If you are in the PowerApps Studio, you can select Open -> Browse, then select the file to be opened.

 

OpeningMsappFile.gif

Super User
Super User

Re: Select Item in Gallery OnSelect

Got it. Ok, so now I see what you are doing: 

 

  • Create a Collection OnSelect of Button1
  • Display Collection in the Gallery
  • Displaying an item in the Gallery OnSelect of Button2

 

Hm. I'm not sure this translates to my use case. 

 

  • I have a Gallery based on a Sharepoint list
  • Each record in the Sharepoint list is a partially completed Form
  • I want to click the Gallery row, then click a Button outside the Gallery
  • And have the selected form display on the next screen

User would then complete the remaining fields of the form, click Submit and I'll either Patch or SubmitForm from there. Can you show me how to translate your solution to that end? 

 

 

Super User
Super User

Re: Select Item in Gallery OnSelect

Eric - In this video I show you how to make the whole row in the Gallery selectable.  Which I think gets you where you want to go. Really, if you haven't watched my whole series on Repeating Tables in PowerApps I think you would enjoy it.

Shane - Microsoft MVP, YouTube, and PowerApps Consulting for when you are in a bind to get this fixed quickly. And finally we now have PowerApps Training
Highlighted
Power Apps
Power Apps

Re: Select Item in Gallery OnSelect

In your case, you would have the gallery Items property set to your SharePoint list, then when you click the button outside that gallery, you would have an expression similar to the one below:

Navigate(
    EditScreen,
    ScreenTransition.Fade,
    { itemToEdit: Gallery1.Selected });
EditForm(EditForm1)

On the other screen, you would have the edit form control (called EditForm1) with the DataSource property set to the same SharePoint list, and the Item property set to 'itemToEdit'. When the user clicks the button, it will navigate to the second screen, passing to the context of that screen the value of the selected item in the gallery (in the variable called 'itemToEdit'). When that value is set as the Item property of the form, then the object properties will be displayed so that the user can continue filling the values for the properties.

View solution in original post

Super User
Super User

Re: Select Item in Gallery OnSelect

Ok. I'm getting there. @Shanescows, the video was helpful. 

 

  • I'm now able to select a row in the Gallery
    • Changed Template fill to: 
      • If(
        ThisItem.IsSelected,
        blue,
        gray)
    • Changed OnSelect to: 
      • UpdateContext({varHasBeenSelected: true})
  • I'm having trouble with the Form showing the selected Row. 
    • So far I've tried setting the Form Item Property to the three options below, but no success:
      • Filter(
            'Sharepoint List',
            ID = gallery.Selected.ID)
        • Error: This expects Record values but produces incompatible Table values.
      • gallery.Selected
        • No Error, but all Form fields are blank. 
      • varHasBeenSelected
        • Error: Invalid Formula. Expected a value compatible with 'Data Source'.
  • Any other ideas? I don't want to use two Galleries, just the one. 

Thanks! 

Helpful resources

Announcements
MBAS Gallery 2020

MBAS Gallery 2020

Watch Microsoft Business Applications Summit sessions on-demand.

firstImage

New Ranks and Rank Icons released on April 21!

The time has come: We are finally able to share more details on the brand-new ranks coming to the Power Apps Community!

Top Solution Authors
Top Kudoed Authors
Users online (6,854)