如何使ScrollViewer中的WPF TextBox边框不会消失

时间:2012-12-03 11:37:18

标签: c# .net wpf textbox scrollviewer

在WPF窗口中,我在ScrollViewer中有一个TextBox:

<ScrollViewer ScrollViewer.HorizontalScrollBarVisibility="Auto" ScrollViewer.VerticalScrollBarVisibility="Auto" ScrollViewer.CanContentScroll="True" MaxHeight="160" Grid.Column="1" Grid.Row="0">
    <TextBox MinHeight="80" Name="generalLog"/>
</ScrollViewer>

使用空文本时,它看起来像this

当文本变长或包含太多行时,滚动条会出现。但是当TextBox被包装在ScrollViewer中时,TextBox变得更大,其边框(默认样式)被隐藏在两侧:

Link to Screenshot because I can't embed pictures

如您所见,左侧无法看到边框。 有没有办法让ScrollViewer出现在TextBox中?或者让ScrollViewer像TextBox一样有边框,并隐藏TextBox,这可能看起来像我想要的那样。

非常感谢。

1 个答案:

答案 0 :(得分:1)

使用边框包裹Scrollviewer并设置Textbox borderbrush =&#34;透明&#34; ?

<Border>
  <ScrollViewer ScrollViewer.HorizontalScrollBarVisibility="Auto" ScrollViewer.VerticalScrollBarVisibility="Auto" ScrollViewer.CanContentScroll="True" MaxHeight="160" Grid.Column="1" Grid.Row="0">
   <TextBox BorderBrush="transparent" MinHeight="80" Name="generalLog"/>
  </ScrollViewer>
</Border>