Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wpf 如何从scrollviewer的最后一项中删除额外的边距?_Wpf_Vb.net_Xaml_Mvvm_.net 3.5 - Fatal编程技术网

Wpf 如何从scrollviewer的最后一项中删除额外的边距?

Wpf 如何从scrollviewer的最后一项中删除额外的边距?,wpf,vb.net,xaml,mvvm,.net-3.5,Wpf,Vb.net,Xaml,Mvvm,.net 3.5,我在这个问题上用了3天,所以我在这里问 我有一个列表框,其中包含一些收据项目。当我添加前两项时,一切正常: 但是,一旦一个项目被添加到列表框中,“溢出”scrollviewer,随机边距就会突然出现,我想不出如何摆脱它: 我尝试了不同版本的.NET framework,但在4.5版本中没有出现这种情况,但不幸的是,我不得不使用.NET 3.5 以下是指向具有相同行为的“沙盒”应用程序的链接: 有人有什么想法吗 以下是要求: .NET 3.5 listbox必须虚拟化,因为它可能变得非常大

我在这个问题上用了3天,所以我在这里问

我有一个列表框,其中包含一些收据项目。当我添加前两项时,一切正常:

但是,一旦一个项目被添加到列表框中,“溢出”scrollviewer,随机边距就会突然出现,我想不出如何摆脱它:

我尝试了不同版本的.NET framework,但在4.5版本中没有出现这种情况,但不幸的是,我不得不使用.NET 3.5

以下是指向具有相同行为的“沙盒”应用程序的链接:

有人有什么想法吗

以下是要求:

  • .NET 3.5
  • listbox必须虚拟化,因为它可能变得非常大

您已在
ScrollContentPresenter
上设置了
CanContentScroll=“True”
,这意味着您需要逐项滚动。如果设置
CanContentScroll=“False”
,则在底部不会看到任何空白。原因现在列表框将使用逐像素滚动

随着项目滚动,列表框保留一些空间,以确保下一个项目完全在视口中。因此,您可以在底部看到空白

但是,将其设置为false将禁用UI虚拟化。所以,这是一种在空白空间和虚拟化之间的折衷


话虽如此,您提到它在.Net4.5中运行良好,但事实并非如此。我在您的示例中也使用了4.5,但结果仍然相同。

您已经在
ScrollContentPresenter
上设置了
CanContentScroll=“True”
,这意味着您需要逐项滚动。如果设置
CanContentScroll=“False”
,则在底部不会看到任何空白。原因现在列表框将使用逐像素滚动

随着项目滚动,列表框保留一些空间,以确保下一个项目完全在视口中。因此,您可以在底部看到空白

但是,将其设置为false将禁用UI虚拟化。所以,这是一种在空白空间和虚拟化之间的折衷


话虽如此,您提到它在.Net4.5中运行良好,但事实并非如此。我在你的样本中也尝试了4.5,结果仍然相同。

你能发布XAML吗?你能发布XAML吗?