我有一个全景应用程序,并且已本地化。它应用于app的流向:
FlowDirection flow = (FlowDirection)Enum.Parse(typeof(FlowDirection), AppResources.ResourceFlowDirection);
RootFrame.FlowDirection = flow;
这种方式适用于应用程序的方向,但问题是我不希望背景图像的方向也发生变化:
<phone:Panorama.Background>
<ImageBrush ImageSource="/MyApp;component/Assets/CustomBackground.png"/>
</phone:Panorama.Background>
所以我认为我可以更改此背景图片的FlowDirection
,或者使用其名称以编程方式更改它或添加类似StackPanel
的内容并更改其方向,但最后都没有人工作。
如何不改变背景图像的方向,或如何为其指定首选方向? (这是一款Windows Phone 8应用程序)
答案 0 :(得分:2)
将Panorama本身的FlowDirection设置为LeftToRight,但更改PanoramaItem控件的FlowDirection以匹配Panorama的父控件
示例:
<Grid x:Name="LayoutRoot" Background="Transparent" FlowDirection="RightToLeft">
<!--Panorama control-->
<phone:Panorama Title="my application" FlowDirection="LeftToRight">
<phone:Panorama.Background>
<ImageBrush ImageSource="/PanoramaApp1;component/Assets/PanoramaBackground.png"/>
</phone:Panorama.Background>
<!--Panorama item one-->
<phone:PanoramaItem Header="first item" FlowDirection="{Binding FlowDirection, ElementName=LayoutRoot}">
</phone:PanoramaItem>
<!--Panorama item two-->
<phone:PanoramaItem FlowDirection="{Binding FlowDirection, ElementName=LayoutRoot}">
</phone:PanoramaItem>
</phone:Panorama>
</Grid>
此外,该应用程序将流向手机的文化。无需存储FlowDirection。掌握这些知识,您将从Grid(LayoutRoot)中删除FlowDirection属性,但将其保留在Panorama / PanoramaItems上,以便正确设置