如何使ListBox比页面更长?

时间:2010-10-08 18:16:47

标签: silverlight silverlight-4.0 listbox

我有100个左右的项目列表。我想将所有项目输出到页面,一个在另一个下面。最初可能会看到25个左右的项目,当用户滚动时,列表的其余部分将可见。

这里的问题是我不想使用ListBox的滚动条 - 我想使用页面的滚动条。 (按页面,我的意思是包含Silverlight对象的aspx页面。)我可以轻松删除ListBox上的滚动条,但只有前25个项目可见。即使我使ListBox的高度任意大,ListBox也只会与页面的可视区域一样大 - 所以即使我滚动页面本身也没什么可看的!

为了澄清我正在尝试做什么 - 想象一个带有项目列表的简单HTML页面:

<ul>
   <li>Item One</li>
   <li>Item Two</li>
   ...
   </li>Item One Hundered</li>
</ul>

您最初只会看到一些项目,但滚动页面时,其余项目都会显示。

我正在尝试在Silverlight中做类似的事情。 ListBox是否使用了错误的控件?

1 个答案:

答案 0 :(得分:1)

如果您只是显示项目而不需要交互性,则需要使用ItemsControl。如果你需要ListBox的互动性,那么我相信你想要像这样构建它(未经测试)

<ScrollViewer>
    <StackPanel>
        <ListBox VerticalAlignment="Stretch" />
    </StackPanel>
<ScrollViewer>

那应该给你ListBox无限区域,因此它会拉伸到最大尺寸。