我有axamarin应用,该应用带有登录页面,可登录到模块启动器登录页面 其中一个模块是主详细信息页面
在VS(调试/发布)以太模拟器或真实设备上,一切都正常运行
但是,从VS出发,如果我运行该应用程序,则是从模拟器或设备本身进行的,除导航至主详细信息页面(无任何响应)外,其他所有功能都正常运行
我尝试直接导航到详细页面(没有母版页) 我尝试将“ /”放在开头或将其删除,或者尝试使用“ / NavigationPage”,或者不使用它
在VS之外的应用中仍然无法正常工作。
我做了最新的更新(7.2.0.1422)
这是我的xml代码:
着陆页上的导航按钮
<ImageButton Grid.Row="1"
Grid.Column="2"
HeightRequest="80"
BackgroundColor="WhiteSmoke"
Source="homescreenbtn12.png"
Command="{Binding NavigationCommand}"
CommandParameter="NavigationPage/MwaslaMasterDetailPage"
IsVisible="{Binding CurrentUser.IsTPEmplyess}"/>
2.master详细信息页面自行
<?xml version="1.0" encoding="utf-8" ?>
<MasterDetailPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:prism="http://prismlibrary.com"
prism:ViewModelLocator.AutowireViewModel="True"
x:Class="TPS.Modules.Mwasla.Views.MwaslaMasterDetailPage"
xmlns:views="clr-namespace:TPS.Modules.Mwasla.Views;assembly=TPS.Modules.Mwasla">
<MasterDetailPage.Master>
<views:MwaslaMasterPageMenu/>
</MasterDetailPage.Master>
<MasterDetailPage.Detail>
<NavigationPage>
<x:Arguments>
<views:MwaslaContactUsPage/>
</x:Arguments>
</NavigationPage>
</MasterDetailPage.Detail>
请帮助
答案 0 :(得分:0)
我想在这里解决一些问题...
<?xml version="1.0" encoding="utf-8" ?>
<MasterDetailPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:prism="http://prismlibrary.com"
prism:ViewModelLocator.AutowireViewModel="True"
x:Class="TPS.Modules.Mwasla.Views.MwaslaMasterDetailPage"
xmlns:views="clr-namespace:TPS.Modules.Mwasla.Views;assembly=TPS.Modules.Mwasla">
<MasterDetailPage.Master>
<views:MwaslaMasterPageMenu/>
</MasterDetailPage.Master>
<MasterDetailPage.Detail>
<NavigationPage>
<x:Arguments>
<views:MwaslaContactUsPage/>
</x:Arguments>
</NavigationPage>
</MasterDetailPage.Detail>
在此示例中,基本上需要了解3页...
/MwaslaMasterDetailPage
,但不建议您执行此操作。相反,您应该在设置明细/MwaslaMasterDetailPage/NavigationPage/MwaslaContactUsPage
Prism.Forms中的导航基于要从上下文中导航的页面。这就是为什么在过去要求导航服务是命名参数的原因。在Prism解析ViewModel之前,它首先构造一个NavigationService的新实例,并向其提供ViewModel将附加到的导航上下文(Xamarin.Forms.Page,也称为View)。
/MyMasterDetailPage/NavigationPage/ViewA
/MyMasterDetailPage
或/NavigationPage/MyMasterDetailPage
之类的引用请记住,当您从母版页或菜单进行导航时,您根本不是在母版页中进行导航,而是在MasterDetailPage中进行导航。这样,您只需对诸如NavigationPage/ViewA
或NavigationPage/ViewB
之类的相对导航进行操作,即可更改详细信息页面。
答案 1 :(得分:0)
最终有效
感谢Dan Siegel提供详细的答案
像魔术一样工作