问题:WPF listbox 横向滚动条 最后一屏的最后一行显示不全
代码以下:
code
<ListBox Width="200" Height="200" FontSize="18" > <ListBoxItem>item1</ListBoxItem> <ListBoxItem>item2</ListBoxItem> <!-----item3,4...13-------> <ListBoxItem>item14</ListBoxItem> <ListBoxItem>item15=================</ListBoxItem> <ListBoxItem>item16</ListBoxItem> <!-----item17,18...21-------> <ListBoxItem>item22</ListBoxItem> </ListBox>
现象:listbox中items数量足以使其显示竖向滚动条,
最后一屏的第一个item(上面的item15===)长度过长使listbox显示横向滚动条。
解决:
在listbox加入如下:
ScrollViewer.CanContentScroll="False"
或另横向滚动条一直显示
ScrollViewer.HorizontalScrollBarVisibility="Visible"
分析:
默认ScrollViewer.CanContentScroll="True"时,点击listbox竖向滚动条向下滚动时每次滚动一个item的高度,
此时到最后一屏的时候,因为出现横向滚动条,挡住了最后一行。
ScrollViewer.CanContentScroll="False"的时候,向下滚动时是连续的,listbox能够滚动到最底部。就不存在上面的问题。
而
ScrollViewer.HorizontalScrollBarVisibility="Visible",因为它一直显示,就不存在占据listbox高度的问题。
xml