我有這樣的:家長控制的ScrollViewer滾動,而不是子控件的ScrollViewer
<Window x:Class="ScrollTest.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow"
Height="450"
Width="525">
<ScrollViewer ScrollViewer.HorizontalScrollBarVisibility="Visible"
ScrollViewer.VerticalScrollBarVisibility="Visible">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<GroupBox Grid.Row="0"
Header="Stuff"
Height="200">
<TextBlock Text="Lots of controls go here"
HorizontalAlignment="Center"
VerticalAlignment="Center" />
</GroupBox>
<TabControl Grid.Row="1">
<TabItem Header="Main Tab">
<TextBox MinHeight="100"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
HorizontalContentAlignment="Left"
VerticalContentAlignment="Top"
ScrollViewer.HorizontalScrollBarVisibility="Visible"
ScrollViewer.VerticalScrollBarVisibility="Visible"
AcceptsReturn="True" />
</TabItem>
</TabControl>
</Grid>
</ScrollViewer>
</Window>
當我添加太多的行成TextBox
,而不是TextBox
的ScrollViewer
使用,箱體延伸和最外層ScrollViewer
用來。如果不固定TextBox
或TabControl
的高度,我可以預防這種情況嗎?
更新:
如果我在TextBox
刪除MinHeight
並設置MaxLines
5,這是我得到:
如果我加了一個6號線,滾動條的TextBox
的ScrollViewer
被使用,但它們仍然保持在TextBox
控制中垂直居中。
好主意,但它沒有影響。 – mbursill 2012-01-02 00:35:13
@mbursill它有沒有限制高度?它應該增加行數,直到您設置的值。 – 2012-01-02 00:36:00
沒有。我試着將MaxLines設置爲5,當我超過5行時,沒有什麼不同。當我達到9行(如果我沒有調整窗口的大小超過我的例子的450),TextBox框開始垂直擴展,導致最外面的滾動查看器可以垂直滾動。 TextBox的滾動條從不使用。 – mbursill 2012-01-02 00:39:22