Viewbox, Viewportcontroller and scrollviewer



我正在尝试创建一个游戏,在滚动查看器中有一个可滚动的地图,我指的是gameMap。但在滚动查看器中操作元素时,我在平滑度方面遇到了问题。

因此,我偶然发现了Viewbox和viewportcontrol。我试着读过这些,但没有找到任何真正能描述的东西,甚至在msdn上也没有。

因此,我想知道是否有人有使用其他控件的经验,并能告诉我他们在基于地图的游戏中使用是否明智,也许还有一个链接来描述这些控件的使用情况?

我正在使用Bing地图任务。它非常流畅。

这是Xaml代码。

    <Grid.RowDefinitions>
        <RowDefinition Height="Auto"></RowDefinition>
        <RowDefinition Height="Auto"></RowDefinition>
        <RowDefinition Height="*"></RowDefinition>
        <RowDefinition Height="Auto"></RowDefinition>
    </Grid.RowDefinitions>
    <StackPanel x:Name="stkhead"    Grid.Row="0">
        <TextBlock Text="Bing Map and Location Service" HorizontalAlignment="Center"></TextBlock>
    </StackPanel>
    <StackPanel x:Name="stkInfo" Grid.Row="1">
        <TextBlock x:Name="tblcurpos" Text="Current Position :-" Width="150" HorizontalAlignment="Left"/>
        <TextBlock x:Name="tblcurpos1" Text="" Width="120" HorizontalAlignment="Center" Margin="0,-25,0,0"/>
    </StackPanel>
    <StackPanel x:Name="stkmap" Grid.Row="2">
    </StackPanel>
    <StackPanel x:Name="stksearch" Grid.Row="3">
        <TextBlock x:Name="tblsearch" Text="Search"></TextBlock>
        <TextBox x:Name="txtsearch" Width="380" Margin="0,-38,0,0"  Text=""></TextBox>
        <Button Name="btnsearch" Content="Search" Height="75" Width="195" Tap="btnsearch_Tap_1"></Button>
    </StackPanel>
</Grid>

这是C#代码。

public MainPage()
{
        InitializeComponent();
        FindMe();
}
private void Bingtask()
{
    BingMapsTask bingMap = new BingMapsTask();
    bingMap.SearchTerm = txtsearch.Text; 
    bingMap.ZoomLevel = 10;
    bingMap.Show();
}
    private void FindMe()
    {
        tblcurpos1.Text = "Not Found";
    }
   private void btnsearch_Tap_1(object sender, System.Windows.Input.GestureEventArgs e)
   {
        Bingtask();
   }

我发现滚动查看器和viewbox在一起工作时存在问题。或者至少我遇到过大问题。因此Viewportcontrol是可行的,因为它包含了视口和滚动查看器。

最后,它是viewportcontroller,它是长列表选择器的基础,这意味着viewportcontrollers是有用的,你只需要让它工作:)

最新更新