0

我有一个 WPF 列表框,它显示从本地文件夹加载的图像,通常介于 1-300 之间)。我在 imageTemplate 中使用转换器来确保并显示图像的缩略图,而不是完整大小的图像。即使这样做,最初加载仍可能需要几秒钟。我的问题是,如何在 ListBox 中知道何时加载 ListBoxItems 开始/结束,以便将鼠标光标设置为等待状态?我正在寻找一种方法来通知该用户正在发生的事情..

这是我的 ListBox 在 XAML 中的样子:

<ListBox SelectionMode="Extended"
         ItemsSource="{Binding Path=ImageFiles}"
         ItemTemplate="{StaticResource imageTemplate}"
         ScrollViewer.CanContentScroll="True"
         ScrollViewer.HorizontalScrollBarVisibility="Disabled"
         ScrollViewer.IsDeferredScrollingEnabled="False"
         VirtualizingStackPanel.VirtualizationMode="Recycling"
         x:Name="images">
        <ListBox.ItemsPanel>
                <ItemsPanelTemplate>
                 <WrapPanel />
                </ItemsPanelTemplate>
            </ListBox.ItemsPanel>
   </ListBox>

谢谢!

4

1 回答 1

0

我在这里回答了类似的问题。

如果您不想弹出窗口,您也可以通过将半透明矩形(或其他填充控件)及其前面的消息/动画附加到列表框或其父控件来执行类似的操作像链接答案中的弹出窗口一样异步关闭。在 BusyIndi​​cator 可用之前,我为 Silverlight 做过类似的事情,而且效果很好。我将它设置为一个用户控件,它具有它应该覆盖的控件的属性,因此它很容易重用。

于 2010-01-22T16:55:01.397 回答