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 / Looking to navigate to...
Power Apps
Answered

Looking to navigate to other screen on select and also get the row selected along

(0) ShareShare
ReportReport
Posted on by 7

Hi, 

I've created two screens .   1- search 2- Edit

 

On the search page, there's a table. When I search using one entity, say last name, it'll filter the table and show only the rows that include the last name.  And when we click on the edit button at the end of the page, after selecting one of the row, it'll navigate to Edit screen. I used Navigate( Edit, fade ) to do that.

 

Now what I'm looking for is that, when I select a row and click edit button, along with just navigating to Edit screen, I want the row I selected to be shown in the edit page. 

How do i do that?

 

Categories:
I have the same question (0)
  • Drrickryp Profile Picture
    Super User 2024 Season 1 on at

    Hi @Maharshiii,

    You can use the optional third element of the Navigate() function to set a context variable that you can use to filter the datasource for the EditForm on the second screen. ie. Navigate(Screen2,None,{selectedID:Gallery1.Selected.ID}).  Then on the EditForm on the second screen, you would set the DataSource to the same one as Gallery1 and the Item property to Lookup(Datasource,ID=SelectedID).

    Tips: Precede the Navigation function with EditForm(Form1);  Navigate(Screen2, None, {selectedID :Gallery1.Selected.ID}) to make sure that the Edit form is in the correct mode when you navigate to it.

    The datasource on an EditForm must be an actual datasource (Excel or Sql table, Sharepoint list, CDS entity, etc.) and not a collection. 

  • v-xida-msft Profile Picture
    Microsoft Employee on at

    Hi @Maharshiii,

    Could you please share a bit more about the table that you mentioned? Is it a Data table control or a Gallery control?

    If the table that you mentioned within your first screen is a Data table control, if you want to pass the selected row within the Data table to the Edit screen, I have made a test on my side, please take a try with the following workaround:10.JPG

     

    11.JPG

    Within the first screen, set the OnSelect property of the "Edit" button to following:

    Navigate(Screen2,ScreenTransition.Cover,{SelectedItem: DataTable1.Selected});
    EditForm(Form1)

    Within the Edit screen, set the Item propert of the Edit form control to following:

    SelectedItem

    Note: The Edit form connects to same data source as that within your Data Table control.

     

    If the Table that you mentioned is a Gallery control, please take a try with the following workaround:

    Set the OnSelect property of the "Edit" button within your first screen to following:

    Navigate(Screen2,ScreenTransition.Cover,{SelectedItem: Gallery1.Selected});
    EditForm(Form1)

    Set the Item property of the Edit form within your second screen to following:

    SelectedItem

     

    Best regards,

    Kris

  • Maharshiii Profile Picture
    7 on at

    Hey, this only works if both pages have same data source. But I have different data sources is both the pages. Only thing that's common in both of them is "ID". So, when I select the row in page 1 from Data source 1 and press edit, it should navigate to the page 2, with data source 2 and should be able to show the row from data source 2, with same ID as selected in Page 1. 
    Please update me.
    Thank you.

  • Verified answer
    SJ-15052312-0 Profile Picture
    418 on at

    You could set a global variable when clicking your edit button: 

    Set(myVar, Gallery1.Selected.ID)

    Then in the edit screen (Not sure if youre populating a gallery, form or something else here) you can use something the Filter() function in your Items() property of your gallery to something like:

    Filter(myDataSource, ID = myVar)

    or if its a form, use the Filter() function in the default() property.


  • Drrickryp Profile Picture
    Super User 2024 Season 1 on at

    @Maharshiii,

    There is no such thing in Powerapps as a page.  I am assuming that you mean screen.  Kris's solution works as long as the datasources for both screens are exactly the same. The datasource for the Edit form cannot be filtered or be a collection, but must be an actual datasource.  If the datasources are different between the DataTable and the Edit form, you need to be more specific on the Edit form.  So I would agree with Kris ALMOST. The Item property of the Edit form must specify Lookup(datasource2,ID=DataTable1.Selected.ID) This assumes the table on your Search screen is named DataTable1. As both @v-xida-msft and I suggested, you could use the Navigate command to pass a context variable between the two screens. The Edit button would be Navigate(Screen2,ScreenTransition.Cover,{SelectedItem: DataTable1.Selected.ID});EditForm(Form1) and the Edit form Item property would be Lookup(datasource2, ID= SelectedItem)

     

    However, I am wondering about the relationship between the two datasources you are referencing.   If there is a one to many relationship between them, then there could be several records in the second datasource with the same foreign key (the ID field that you speak of).  If this is the case, how do you know which of them you will edit? If it is a one to one relationship, then you could have all the fields in one table and you wouldn't need a second datasource. 

  • Drrickryp Profile Picture
    Super User 2024 Season 1 on at

    Hi @samuelJ,

    You are correct that you could use a Set function to create a global variable to filter the Items in a second gallery or datatable as an alternative to using the third element of the Navigate function.  However, there is no such thing as a Default property of an Edit form.  I am assuming that you mean the Item property.  Moreover, you cannot use Filter in the Item property as the Item must be a single record so Lookup() is the correct usage as it chooses only one record.  If there are more than one record with the same field value, the first one is chosen by default.  Filter() returns a table, even if it is a single record table. .   

  • Maharshiii Profile Picture
    7 on at

    Thank you, that worked perfectly. 

  • 1Adm Profile Picture
    2 on at

    Hi guys it's been a while

    i am trying to do the same here, i have a gallery where i have a navigate button to the next page

    this gallery has a lot of rows and when i navigate i want to get the same infos to the other screen like (name, phone, etc...)

    each row has different infos

    also i need to let you know that the second screen it's not a gallery

    and the data source is a CDS

     

    please and thank you

  • Drrickryp Profile Picture
    Super User 2024 Season 1 on at

    Hi @1Adm 

    I will answer you here but it is better to post a new question than to tag on to one that is already solved.  If you go to make.powerapps.com and select new and then create from data, Powerapps will make you a nice app that has 3 screens, a gallery, a viewdata screen and an edit screen where you can change the data or add new records.  There will be icons on the gallery screen that if you look at the properties will tell you exactly how they work. Please start here and don't try to re-invent the wheel. _1.png

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

Season of Sharing Community Challenge Winners!

Congratulations to our community stars!

Kudos to our 2025 Community Spotlight Honorees

Expanding mentorship, skilling, and AI innovation

Congratulations to the July Top 10 Community Leaders!

These are the community rock stars!

Leaderboard > Power Apps

#1
WarrenBelz Profile Picture

WarrenBelz 356 Most Valuable Professional

#2
11manish Profile Picture

11manish 225 Super User 2026 Season 2

#3
Mohsin Ali Profile Picture

Mohsin Ali 211

Last 30 days Overall leaderboard