总结:
1 按内容块滚动: CanContentScroll="True"
2 支持触摸滚动: PanningMode="VerticalOnly"
3 支持内容滚动(不在滚动条区域就可以滚动):
需要设置ListBox.Template,在listbox外包一层不可以不知道为什么:
<ListBox.Template>
</ScrollViewer>
</ControlTemplate>
</ListBox.Template>
4 后台设置selecteditem改变时滚动条自动滚动到选中的项目:
使用 listbox.ScrollIntoView(listbox.SelectedItem);
其中用鼠标点击选中后再触发listbox.ScrollIntoView(listbox.SelectedItem)会引发冲突,是滚动条最后的位置不对,
所以listbox.ScrollIntoView(listbox.SelectedItem);只可以写在按钮触发,而不能写在selectedItem的Set方法里。