我在我的listboxitem的故事板上有一个触发器,触发器是“已加载”的。似乎每次滚动列表框时,该项目都会获得“已加载”事件。我真的只想让故事板在显示listboxitem时运行一次。
我假设加载的事件只会被触发一次。
任何帮助都是最好的。
谢谢!
发布于 2009-06-20 00:34:18
我不确定您是否可以让它只运行一次。大多数情况下,ListBox使用VirtualizingStackPanel作为其ItemsPanel。这会导致仅创建可见(或几乎可见)的ListBoxItems并将其添加到可视化树中。滚动离开后,以前可见的项将被销毁,然后创建新的可见项。每次滚动到一个项目时,它都会被重新创建,因此它的Loaded事件将被激发。
发布于 2009-06-20 10:24:52
您可以尝试将列表框的VirtualizingStackPanel.IsVirtualizing=设置为“False”,这样就可以了。请注意,这会消耗更多的资源,因为无论您是否在列表中看到项目,它们都将始终存在。不过,如果你没有太多的项目,应该不会有什么问题。
https://stackoverflow.com/questions/1019625
复制相似问题