Xamarin.forms 在prism中使用masterdetailview实现UWP弹出式splitview?
我完全是xamarin的傻瓜:) 所以我想知道是否有人能给我指出正确的资源 简而言之,我想使用Xamarin MasterDetailPage在prism中实现类似的功能 使用主细节示例,汉堡包菜单不会充当弹出菜单Xamarin.forms 在prism中使用masterdetailview实现UWP弹出式splitview?,xamarin.forms,uwp,prism,master-detail,splitview,Xamarin.forms,Uwp,Prism,Master Detail,Splitview,我完全是xamarin的傻瓜:) 所以我想知道是否有人能给我指出正确的资源 简而言之,我想使用Xamarin MasterDetailPage在prism中实现类似的功能 使用主细节示例,汉堡包菜单不会充当弹出菜单 <MasterDetailPage xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
<MasterDetailPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:prism="clr-namespace:Prism.Mvvm;assembly=Prism.Forms"
prism:ViewModelLocator.AutowireViewModel="True"
x:Class="HelloWorld.Views.MyMasterDetail">
<MasterDetailPage.Master>
<ContentPage Title="Default">
<StackLayout>
<Button Text="ViewA" Command="{Binding NavigateCommand}" CommandParameter="MyNavigationPage/ViewA?id=A" />
<Button Text="ViewB" Command="{Binding NavigateCommand}" CommandParameter="MyNavigationPage/ViewB?id=B" />
<Button Text="ViewC" Command="{Binding NavigateCommand}" CommandParameter="MyNavigationPage/ViewC?id=C" />
</StackLayout>
</ContentPage>
</MasterDetailPage.Master>
</MasterDetailPage>
现在,虽然有足够的空间,但它显示出
(作为示例,我根本不使用SplitViewMenu)
我需要图标/一些小的文字来显示最初和点击汉堡,它应该扩大(你知道就像第一个链接/groove音乐应用程序的行为)。
小费
现在,虽然有足够的空间,但它显示出
根据我的经验,如果您为SimpleNavMenuItem分配了Symbol属性,可能的原因是您没有导入Themes
文件夹下的主题文件Generic.xaml
此文件包括模板、自定义控件的样式。例如,对于NavMenuItem的模板,需要在此处正确指定FontIcon的Glyph属性:
<DataTemplate x:Key="NavMenuItemTemplate">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="48" />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<FontIcon FontSize="16" Glyph="{Binding Path=SymbolAsChar}" VerticalAlignment="Center"
HorizontalAlignment="Center" ToolTipService.ToolTip="{Binding Path=Label}" />
<TextBlock Grid.Column="1" Text="{Binding Path=Label}" VerticalAlignment="Center" />
</Grid>
</DataTemplate>
如果你仍然可以让它工作,请分享一个演示:)
现在,虽然有足够的空间,但它显示出
根据我的经验,如果您为SimpleNavMenuItem分配了Symbol属性,可能的原因是您没有导入Themes
文件夹下的主题文件Generic.xaml
此文件包括模板、自定义控件的样式。例如,对于NavMenuItem的模板,需要在此处正确指定FontIcon的Glyph属性:
<DataTemplate x:Key="NavMenuItemTemplate">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="48" />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<FontIcon FontSize="16" Glyph="{Binding Path=SymbolAsChar}" VerticalAlignment="Center"
HorizontalAlignment="Center" ToolTipService.ToolTip="{Binding Path=Label}" />
<TextBlock Grid.Column="1" Text="{Binding Path=Label}" VerticalAlignment="Center" />
</Grid>
</DataTemplate>
如果你仍然可以让它工作,请分享一个演示:)我自己也一直在寻找类似的东西,因为当我在Windows 10移动设备上运行时,我无法隐藏MasterDetailPage母版页中显示的导航栏(不过我可以为PC隐藏)。所以基本上,我正在考虑最终构建自己版本的MasterDetailPage 由于我还没有建造它,我不能确切地告诉你如何实现你的要求,但我知道它需要你:
在这两种情况下,渲染器都将涉及创建和操作新的SplitView(这是SplitViewMenu示例正在扩展的本机UWP控件)。有一个关于创建实际UWP控件的教程。如果您还没有了解Xamarin的渲染器,那么它们是Xamarin.Forms控件和给定平台的本机控件之间的“翻译器”和“解释器”。我怀疑Xamarin最终会为UWP重写他们的MastDetailPage渲染器,以使用SplitView作为基础,但谁知道什么时候会这样。Xamarin在GitHub上还有一个针对Xamarin.Forms(以及其他)的开源SDK,因此您可以研究UWP的MasterDetailPageRenderer。我自己也在寻找类似的东西,因为在Windows 10移动设备上运行MasterDetailPage时,我无法隐藏MasterDetailPage主页中显示的导航栏(不过我可以为个人电脑隐藏)。所以基本上,我正在考虑最终构建自己版本的MasterDetailPage 由于我还没有建造它,我不能确切地告诉你如何实现你的要求,但我知道它需要你:
在这两种情况下,渲染器都将涉及创建和操作新的SplitView(这是SplitViewMenu示例扩展的本机UWP控件)。有一个创建实际UWP控件的教程。如果您尚未了解Xamarin的渲染器,则它们是“翻译器”和“解释器”在Xamarin.Forms控件和给定平台的本机控件之间。我怀疑Xamarin最终会为UWP重写其MastDetailPage呈现程序,以使用SplitView作为基础,但谁知道什么时候会这样。Xamarin还有一个用于Xamarin.Forms(以及其他)的开源SDK在GitHub上,您可以研究UWP的MasterDetailPageRenderer。抱歉,看起来我不清楚?我没有使用SplitViewMenu,我正在尝试使用prism和提供的示例,我包含SplitViewMenu的唯一原因是为了演示,我将编辑问题以使其更清楚。您能否提供一个如何使用自定义M的示例asterDetailPageRenderer使用本机SplitView的示例?如果不是,希望Xamarin在下一个版本中释放此控件。抱歉,看起来我不清楚?我没有使用SplitViewMenu,我正在尝试使用prism和提供的示例,我包含SplitViewMenu的唯一原因是为了演示,我将编辑问题以使其更简单重新清除。请提供一个如何使用使用本机SplitView的自定义MasterDetailPageRenderer示例的示例。如果没有,希望Xamarin在下一版本中发布此控件。