我有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是否使用了错误的控件?
答案 0 :(得分:1)
如果您只是显示项目而不需要交互性,则需要使用ItemsControl
。如果你需要ListBox
的互动性,那么我相信你想要像这样构建它(未经测试)
<ScrollViewer>
<StackPanel>
<ListBox VerticalAlignment="Stretch" />
</StackPanel>
<ScrollViewer>
那应该给你ListBox
无限区域,因此它会拉伸到最大尺寸。