2016-05-30 28 views
0

的屏幕被它的名字比方说,我在我的PowerApps应用dropdown控制下一个项目:导航到PowerApps

[ 
    "1. Calculator", 
    "2. Counter", 
    "3. API", 
    "4. Collections", 
    "5. Dropdown", 
    "6. Acceleration", 
    "7. Camera" 
] 

我想浏览被它的名字的屏幕。像

Navigate(Nav.Selected.Value, ScreenTransition.Cover) 

是否有可能做某事? 有没有一个函数根据它的名字返回一个控件?

Navigate(GetControl(Nav.Selected.Value), ScreenTransition.Cover) 

因为现在我必须使用If功能在这样的应用程序导航:

Navigate(If(
    "1" in Nav.Selected.Value, Screen1, 
    "2" in Nav.Selected.Value, Screen2, 
    "3" in Nav.Selected.Value, Screen3, 
    "4" in Nav.Selected.Value, Screen4, 
    "5" in Nav.Selected.Value, Screen5, 
    "6" in Nav.Selected.Value, Screen6, 
    "7" in Nav.Selected.Value, Screen7), 
ScreenTransition.Cover) 

看起来并不很漂亮。有更优雅的解决方案吗?

回答

1

你可以找到实现的是,这里的一种方式:https://powerusers.microsoft.com/t5/PowerApps-Forum/Navigate-to-a-screen-by-it-s-name/m-p/2454#M1352

基本上创建一个表,而是结合了这一点。

增加更多,因为这个帖子已被删除声称它并没有给予详细信息,以便只克隆上面的链接: 创建这样一个表:

Table(
    { Text: "1. Calculator", Screen: Screen1 }, 
    { Text: "2. Counter", Screen: Screen2 }, 
    { Text: "3. API", Screen: Screen3 }, 
    { Text: "4. Collections", Screen: Screen4 }, 
    { Text: "5. Dropdown", Screen: Screen5 }, 
    { Text: "6. Acceleration", Screen: Screen6 }, 
    { Text: "7. Camera", Screen: Screen7 }) 

,然后绑定下拉到该表及用途:

导航(Dropdown1.Selected.Screen,ScreenTransition.Fade)

+0

虽然此链接可以回答这个问题,这是BETT呃在这里包括答案的基本部分,并提供参考链接。如果链接页面更改,则仅链接答案可能会失效。 - [来自评论](/ review/low-quality-posts/12580577) – Luke

+0

它确实回答了问题,它确实评论解决方案,因此不确定它为何被删除 –