2010-06-30 65 views
8

我在同一位置有一个TextBlock和一个文本框。根据用户所处的模式不同,我使其中一个可见,另一个折叠。这工作正常,但我怎样才能使Textblock可滚动?我想我应该使用ScrollViewer,但我不知道它为什么不起作用。我尝试了解高度(自动和固定),但它不会滚动。我的xaml是这样的:滚动文本块

<ScrollViewer x:Name="detailsScroller" Height="285" Width="480" Canvas.Top="76" HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto"> 
    <Canvas x:Name="infoCanvas" Width="478" > 
    <TextBlock x:Name="textblockInfo" TextWrapping="Wrap" Width="462" Height="197" Canvas.Left="8"/> 
    <TextBox x:Name="textboxInfo" TextWrapping="Wrap" Width="478" AcceptsReturn="True" Height="300" Visibility="Collapsed" /> 
    </Canvas> 
</ScrollViewer> 

谢谢!

回答

2

你可能想参考discussion和MSFT confirmation文本控制滚动仍在进行中截至目前的CTP工作。测试版本不会太远,希望在这方面更多。

+0

谢谢,我希望他们很快就会发布刷新,因为我不得不推迟我的应用程序的各个方面。 – Skoder 2010-07-01 12:25:29

0

如果要滚动内容,请确保滚动条可见。

<TextBox Text="{Binding SomethingReallyLong}" 
TextWrapping="Wrap" 
VerticalScrollBarVisibility="Visible"/>   
+0

对不起,忘了提,这是Windows Phone 7的我已经编辑我原来的标签。显示滚动条不起作用,因为它只是使文本框可编辑,文本块也不滚动。 – Skoder 2010-06-30 23:32:39

1

以下代码工作原理:由于您的子控件(即文本块)的高度和宽度与您的滚动查看器的宽度和高度不相等,因此滚动条不显示。我已经给出了与其内部定义的控件的滚动查看器相同的高度和宽度。

<ScrollViewer x:Name="detailsScroller" Height="285" Width="480" Canvas.Top="76" HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto"> 
    <Canvas x:Name="infoCanvas" Height="285" Width="480" > 
    <TextBlock x:Name="textblockInfo" TextWrapping="Wrap" Height="285" Width="480" Canvas.Left="8"/> 
    <TextBox x:Name="textboxInfo" TextWrapping="Wrap" Width="478" AcceptsReturn="True" Height="300" Visibility="Collapsed" /> 
    </Canvas> 
</ScrollViewer> 
+0

谢谢我试过这个代码,但它只是稍微移动了一下。我一直无法顺利地滚动到最后。我想这是目前的限制。 – Skoder 2010-07-01 12:24:28

23

不要高度在文本框中。 这非常适合我:

<ScrollViewer Height="192" HorizontalAlignment="Left" Margin="12,34,0,0" Name="scrollViewer1" VerticalAlignment="Top" Width="404"> 
     <TextBlock VerticalAlignment="Top" Name="textBlock1" Text="TextBlock" Width="378" TextWrapping="Wrap" /> 
    </ScrollViewer> 
+0

谢谢!这正是我需要的! – 2011-08-02 01:46:42

+0

太棒了!我疯了!谢谢! – Frank 2013-10-31 11:29:10