0

我的列表框项目的情节提要上有一个触发器,其中触发器是“已加载”。似乎每次列表框滚动时,项目都会收到“已加载”事件。我真的只希望情节提要在显示列表框项时运行一次。

我假设 Loaded 事件只会被触发一次。

任何帮助都会很棒。

谢谢!

4

2 回答 2

1

我不确定你是否可以让它只运行一次。大多数时候ListBox将 aVirtualizingStackPanel用于其ItemsPanel. 这只会导致那些ListBoxItems可见(或几乎可见)的内容被创建并添加到可视化树中。滚动离开后,可见的项目将被销毁,然后创建新可见的项目。每次滚动到一个项目时,它都会被重新创建,因此它的Loaded事件会触发。

于 2009-06-20T00:34:18.430 回答
0

您可以尝试为您的列表框设置 VirtualizingStackPanel.IsVirtualizing="False" ,应该这样做。请注意,这会消耗更多资源,因为无论您是否在列表中看到它们,它们都将始终存在。如果你没有太多的项目,应该不是问题。

于 2009-06-20T10:24:52.270 回答