我遇到SurfaceScrollViewer的问题,由于我的经验不足,我不知道如何修复它们。我首先大致以这种方式开发了一个用户控件:
<Canvas>
<!-- other items -->
<s:SurfaceScrollViewer PanningRatio="100" x:Name="Scroller" Width="614" VerticalScrollBarVisibility="Visible" HorizontalScrollBarVisibility="Disabled" Height="620" Canvas.Top="135" >
<TextBlock Foreground="#FF120403" Background="Transparent"
x:Name="Canto_previous" FontSize="24" Padding="20"/>
</s:SurfaceScrollViewer>
</Canvas>
一切顺利。然后,我转向在SurfaceScrollViewer中插入自定义用户控件,而不是简单的TextBlock:这样的控件结构如下:
<StackPanel Orientation="Vertical" Height="600" Width="auto">
<TextBlock Foreground="#FF120403" Background="Transparent"
x:Name="Canto_previous" FontSize="24" Padding="20"/>
<Image Source="images/cornicetta.jpg" Stretch="Fill"/>
<TextBlock Foreground="#FF120403" Background="Transparent"
x:Name="Canto_next" FontSize="24" Padding="20"/>
</StackPanel>
在这两种情况下,我都会在后面的代码中的文本块中插入一个长文本。 现在,使用自定义用户控件不再显示滚动行为。它只会在我将HorizontalScrollBarVisibility和VerticalScrollBarVisibility都设置为Visible时返回(这不是我想要的:我只需要垂直滚动和隐藏的滚动条),即使在这种情况下它也只显示第一个TextBlock。
我错过了什么?非常感谢。