传递一个值到另一个屏幕

Pass a value to another screen

我有一个屏幕,用户可以在其中 select 一个选项(不是浏览图库,因为它不能满足要求)。

我想将用户 select 编辑的项目传递给浏览库使用的预制 "DetailScreen1"。

我查看了浏览屏幕,但没有看到它是如何工作的,因为 select 事件导航只是正常导航。

代码:

Navigate(DetailScreen1, ScreenTransition.Fade)

我想做类似

的事情
Navigate(DetailScreen1, ScreenTransition.None {Last(listOfStuff)})

谢谢

您可以使用 Navigate function 的第三个参数将额外参数传递给要导航到的屏幕的上下文。例如,如果您的第一个屏幕有一个下拉菜单和一个文本输入控件,您希望将值传递到下一个屏幕,您可以使用以下表达式:

Navigate(DetailScreen1, ScreenTransition.Fade, { text: TextInput1.Value, dropdownChoice: Dropdown1.Selected.Value })

在 DetailScreen1 中,您可以使用这些可用的上下文变量。

这是一个示例:第一个屏幕中的下拉列表包含一个部分列表,选择一个部分后您将导航到另一个页面:

在"right arrow"中,我们可以设置如下OnSelect属性:

Navigate(ProductsScreen, ScreenTransition.Fade, { selectedSection: Dropdown1.Selected.Value })

在 ProductsScreen 中,您可以拥有一个图库,其项目根据传递的值进行过滤:

Items: Filter(AllProducts, Section = selectedSection)