代码之家  ›  专栏  ›  技术社区  ›  John Nicholas

Silverlight:如何使用滚动查看器包装列表视图而不指定高度?

  •  1
  • John Nicholas  · 技术社区  · 14 年前

    我有一个控件,它的列表长度变化很大。这个控件出现在不同的地方,这意味着我无法轻松计算它的位置和所需的高度。

    此外,我只想让scrollviewer根据其父级简单地调整自身大小。目前,它坚持根据内容调整自己的规模。

    目前,当我有一个超过屏幕高度的列表时,整个控件从底部延伸,scrollviewer不显示任何条(因为它已经延伸到了内容的高度,所以认为它不是必需的)。

    我没有包含代码,因为对象图相当深。

    我要寻找的是一组条件,这些条件会导致scrollviewer根据其内容而不是其父项调整自身大小。

    我让它在类似的情况下工作,包括网格和数据网格,这个控件的独特部分是有一个包含控件的列表。

    有什么想法吗?我更喜欢不需要使用代码隐藏的解决方案,但我真的不能选择。

    1 回复  |  直到 14 年前
        1
  •  1
  •   AnthonyWJones    14 年前

    下面是一些常见的原因,可以让滚动浏览者根据其内容而不是“父项”调整大小:-

    • 它被放在一个 Canvas 或者 StackPanel
    • 它被分配给一个 Grid 水平或垂直对齐未设置为拉伸且其内容大小小于行或列大小的行/列。

    最终取决于包含面板,它选择如何调整子元素的大小,这样就不可能完全从子元素内部的代码中指定大小。