C# 如何在Panorama.ItemTemplate中水平定向全景项目?
在我的Windows Phone应用程序中,我有:C# 如何在Panorama.ItemTemplate中水平定向全景项目?,c#,silverlight,windows-phone-7,silverlight-4.0,silverlight-3.0,C#,Silverlight,Windows Phone 7,Silverlight 4.0,Silverlight 3.0,在我的Windows Phone应用程序中,我有: <controls:Panorama.ItemTemplate> <DataTemplate> <Grid Visibility="{Binding ItemVisibility}" Margin="0,-60,0,0"> <ScrollViewer Margin="0,0,0,0"
<controls:Panorama.ItemTemplate>
<DataTemplate>
<Grid Visibility="{Binding ItemVisibility}" Margin="0,-60,0,0">
<ScrollViewer Margin="0,0,0,0" VerticalAlignment="Top" Height="Auto">
<StackPanel Margin="0,0,0,0" Width="Auto" >
<RichTextBox x:Name="Browser" IsReadOnly="True" Foreground="Black" Height="Auto" cxi:WebBrowserHelper.Html="{Binding BrowserHtml}" HorizontalAlignment="Left" Width="460" Margin="0,0,0,0" AcceptsReturn="True" VerticalScrollBarVisibility="Visible" />
<Canvas Height="100" Width="0" />
</StackPanel>
</ScrollViewer>
</Grid>
</DataTemplate>
</controls:Panorama.ItemTemplate>
如何确定全景项目的方向-Orientation=“Horizontal”
我试过:
<controls:Panorama.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal" />
</ItemsPanelTemplate>
</controls:Panorama.ItemsPanel>
但是有一个空引用例外,首先它听起来有点奇怪。panorama控件内的项目宽度不应太大,也不应在其中进行水平滚动,因为这可能会破坏用户体验(用户是否会滚动panorama项目内的内容或panorama本身以切换到另一个panorama项目) 不需要修改ItemsPanel模板,只需修改PanoramItem内容中的StackPanel即可。诸如此类:
<StackPanel Margin="0,0,0,0" Width="Auto" Orientation="Horizontal" >
<RichTextBox x:Name="Browser" IsReadOnly="True" Foreground="Black" Height="Auto" cxi:WebBrowserHelper.Html="{Binding BrowserHtml}" HorizontalAlignment="Left" Width="460" Margin="0,0,0,0" AcceptsReturn="True" VerticalScrollBarVisibility="Visible" />
<Canvas Height="100" Width="0" />
</StackPanel>
这没有帮助,因为我仍然可以在Panorama中看到下一个项目。您是否尝试在DataTemplate中使用PanoramaItem而不是(或在)网格上?(类似于Panorama.ItemTemplate->DataTemplate->PanoramaItem->Grid)谢谢,但这并没有帮助,物品的宽度会变薄一点