在Windows Phone 8中使StackPanel可滚动

时间:2013-11-24 16:17:59

标签: c# windows-phone-8 height windows-phone stackpanel

我有一个控件列表,放入一个stackpanel。这些控件是Hubtiles,在用户创建后以编程方式添加 - 本质上是一个列表。我需要创建添加它们的StackPanel,可滚动 - 对此最好的方法是什么?我应该将堆栈面板放在ScrollView中,然后使用Hubtile的实际高度增加StackPanels高度 - 使其可滚动,但不是这样,用户可以在没有任何东西的情况下滚动无限。因此,只要StackPanel内的控件数量达到3,它就会自动增加它的高度:

每当StackPanel内的控件数量达到3或更高时:

StackPanel.Height = StackPanel.Height + Hubtile.ActualHeight;

非常感谢!

1 个答案:

答案 0 :(得分:7)

只需将StackPanel放入ScrollViewer ,将StackPanel.VerticalAlignment设置为Stretch,并将固定大小设置为父ScrollViewer。这是必要的 - ScrollViewer必须知道它的大小,以便在内部内容太长时显示内部内容的滚动条。