Windows phone 7 scrollviewer不工作

Windows phone 7 scrollviewer不工作,windows-phone-7,xaml,Windows Phone 7,Xaml,y我的scrollviewer直到最后才滚动。它会被击中一个有限的位置。 我已经附加了我的xaml代码。我在代码中放置了一个画布。scrollviewer在两个网格中 <ScrollViewer> <Canvas Margin="0,0,0,0"> <toolkit:ListPicker x:Name="listPicker" ItemTemplate="{StaticResource PickerItemTemplate}"

y我的scrollviewer直到最后才滚动。它会被击中一个有限的位置。 我已经附加了我的xaml代码。我在代码中放置了一个画布。scrollviewer在两个网格中

<ScrollViewer>
    <Canvas Margin="0,0,0,0">
        <toolkit:ListPicker x:Name="listPicker"  ItemTemplate="{StaticResource PickerItemTemplate}" 
                    FullModeItemTemplate="{StaticResource PickerFullModeItemTemplate}"  CacheMode="BitmapCache"
                    Header="" Margin="12,246,210,298" FontFamily="Yu Gothic" FontSize="22" FontWeight="SemiBold" Width="240" />

        <toolkit:ListPicker x:Name="listPicker2"  ItemTemplate="{StaticResource PickerItemTemplate}" ItemCountThreshold="3"
                    FullModeItemTemplate="{StaticResource PickerFullModeItemTemplate}"  CacheMode="BitmapCache"
                    Header=""  Margin="9,343,210,206" Width="240" />
        <toolkit:ListPicker CacheMode="BitmapCache" FullModeItemTemplate="{StaticResource PickerFullModeItemTemplate}" Header="" ItemCountThreshold="3" ItemTemplate="{StaticResource PickerItemTemplate}" Margin="12,440,210,108" Name="listPicker1" Width="240" />
        <toolkit:ListPicker CacheMode="BitmapCache" FullModeItemTemplate="{StaticResource PickerFullModeItemTemplate}" Header="" ItemCountThreshold="3" ItemTemplate="{StaticResource PickerItemTemplate}" Margin="11,546,210,2" Name="listPicker3" Width="240" />

        <TextBlock Height="40" HorizontalAlignment="Left" Margin="30,212,0,0" Name="textBlock1" Text="MONTHLY DEBTS" VerticalAlignment="Top" Width="185" FontSize="24" />
        <TextBlock Height="40" HorizontalAlignment="Left" Margin="290,212,0,0" Name="textBlock2" Text="AMOUNTS" VerticalAlignment="Top" Width="147" FontSize="24" />

        <clrtb:ClearableTextBox Canvas.Left="246" Canvas.Top="242" Height="75" Name="qualifytb" Width="208" />
        <clrtb:ClearableTextBox Canvas.Left="242" Canvas.Top="338" Height="75" Name="clearableTextBox1" Width="208" />
        <clrtb:ClearableTextBox Canvas.Left="246" Canvas.Top="436" Height="75" Name="clearableTextBox2" Width="208" />
        <clrtb:ClearableTextBox Canvas.Left="244" Canvas.Top="542" Height="75" Name="clearableTextBox3" Width="208" />
        <TextBlock Text="DEBT RATIO" Canvas.Left="148" Canvas.Top="642" FontSize="26" FontWeight="Medium" />
        <TextBlock Text="Conv Debt Ratio:" Canvas.Left="30" Canvas.Top="700" FontSize="26" FontWeight="Medium" />
        <TextBlock Text="FHA Debt Ratio:" Canvas.Left="30" Canvas.Top="800" FontSize="26" FontWeight="Medium" />
        <TextBlock Text="VA Debt Ratio:" Canvas.Left="30" Canvas.Top="900" FontSize="26" FontWeight="Medium" />
        <clrtb:ClearableTextBox Canvas.Left="250" Canvas.Top="700" Height="75" Name="rt1" Width="208" />
        <clrtb:ClearableTextBox Canvas.Left="320" Canvas.Top="700" Height="75" Name="rt2" Width="208" />
        <clrtb:ClearableTextBox Canvas.Left="250" Canvas.Top="800" Height="75" Name="rt3" Width="208" />
        <clrtb:ClearableTextBox Canvas.Left="320" Canvas.Top="800" Height="75" Name="rt4" Width="208" />
        <clrtb:ClearableTextBox Canvas.Left="250" Canvas.Top="900" Height="75" Name="rt5" Width="208" />
    </Canvas>
</ScrollViewer>

我发现了这样一个问题:,这基本上是一个类似的问题。这个问题是WPF特有的,但也可以应用于WP/Silverlight

问题是
Canvas
将始终返回
DesiredSize
值(0,0),因此ScrollViewer永远不会认为需要滚动

解决方案很简单:只需使用
StackPanel
Grid
而不是
Canvas
。如果你真的需要画布,你必须覆盖它。

我发现这个问题:,这基本上是一个类似的问题。这个问题是WPF特有的,但也可以应用于WP/Silverlight

问题是
Canvas
将始终返回
DesiredSize
值(0,0),因此ScrollViewer永远不会认为需要滚动


解决方案很简单:只需使用
StackPanel
Grid
而不是
Canvas
。如果你真的需要画布,你必须覆盖它。

Canvas
不是要使用的正确布局面板,它会以你使用它的方式产生奇怪的行为。当您需要对定位进行有限控制,并且愿意编写重要的逻辑来支持弹出的边缘情况时,可以使用它。尝试使用
Grid
,并将其配置为列和行。

Canvas
不是要使用的正确布局面板,它会以您使用它的方式产生奇怪的行为。当您需要对定位进行有限控制,并且愿意编写重要的逻辑来支持弹出的边缘情况时,可以使用它。尝试使用
网格
,并将其配置为列和行。

代码不完整,显示ScrollViewer的开头alsohi chandra,刚刚错过了两个无法编辑的字段。感谢uI,我已经在一些应用程序中看到了这种行为。这一定与无法确定某些元素高度的布局算法有关。您是否考虑过使用
代替
?代码不完整,请显示ScrollViewer的开头alsohi chandra,刚刚错过了两个无法编辑的字段。感谢uI,我已经在一些应用程序中看到过这种行为。这一定与无法确定某些元素高度的布局算法有关。您是否考虑过使用
代替