ListboxItem多次加载

时间:2009-06-19 19:19:55

标签: wpf storyboard listboxitem loaded

我在listboxitem的故事板上有一个触发器,触发器是'Loaded'。 似乎每次列表框滚动项目时都会获得“已加载”事件。 当listboxitem显示时,我真的只希望故事板运行一次。

我认为Loaded事件只会被触发一次。

任何帮助都会很棒。

谢谢!

2 个答案:

答案 0 :(得分:1)

我不确定你是否只能运行一次。大多数情况下,ListBox会为其VirtualizingStackPanel使用ItemsPanel。这会导致仅创建可见(或几乎可见)的ListBoxItems并将其添加到可视树中。滚动后,可见的项目将被销毁,然后会创建新显示的项目。每次滚动到某个项目时,都会重新创建该项目,因此会触发其Loaded事件。

答案 1 :(得分:0)

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