2009-12-02 49 views
4

我是新来的WPF和ScrollViewer让我很沮丧。要么我不会“得到”它,要么是有限的控制。WPF - ScrollView混淆

这里是我的挫折:

  1. 坏水平滚动水平滚动条只在列表的底部可见(我必须滚动到页面底部看到它)

  2. 坏边框我在我的ScrollViewer中有一个ListBox。当我开始列表的底部没有边框,当我向下滚动时,列表框的顶部边框(线条)消失。我可以理解这一点,但试图为ScrollViewer设置BorderThickness或BorderBrush的结果没有任何变化(我想使用ScrollViewer的边框来保留列表内容的常量框,就像网络世界中的大多数列表框一样)。

  3. 对短列表的处理不当当列表中的项目没有到达底部时,ScrollViewer会将滚动条保留在那里并将其缩小。为什么不释放一些空间并将其删除?

其中有些可能看起来很小(而且是)。但用户期望从他们的应用程序中获得一定的外观和感觉,WPF正在让这种开箱即用的功能变得很难。

如果你知道解决这些问题的方法,我很乐意回复。如果有更好的方式来处理滚动比使用ScrollViewer,这将是值得欢迎的。

回答

11
  1. 也许你从列表中看到了一些滚动条,而不是来自ScrollViewer的滚动条?尝试设置<ScrollViewer ... HorizontalScrollBarVisibility="Auto">(默认为Hidden,这意味着没有水平滚动条是不断显示;还尝试进行调试的缘故“可见”)

  2. 是把周围的ScrollViewer一个<Border>的选项?

  3. VerticalScrollBarVisibility的默认值为Visible。如果您希望滚动条在不必要时消失,请尝试<ScrollViewer ... VerticalScrollBarVisibility="Auto">

+0

我在我的ScrollViewer周围添加了 ....,而不是运气。仍然有相同的问题。 – Vaccano 2009-12-02 22:58:20

+0

其他项目虽然运作良好。 – Vaccano 2009-12-02 22:59:00

+0

原来的默认颜色是清晰的。如果我改变了它的工作颜色。谢谢您的帮助。 – Vaccano 2009-12-02 23:21:47