Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.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
Xaml ListView中的ImageEx冻结UIThread_Xaml_Uwp_Windows Community Toolkit - Fatal编程技术网

Xaml ListView中的ImageEx冻结UIThread

Xaml ListView中的ImageEx冻结UIThread,xaml,uwp,windows-community-toolkit,Xaml,Uwp,Windows Community Toolkit,uwp社区工具包版本2.2 我的listview中有几个ImageEx元素,它们被绑定到URL。所以,当我启动应用程序时,UI线程似乎被ImageEx阻塞了。在从Internet加载所有ImageEx图像之前,我无法移动应用程序窗口、调整窗口大小、滚动列表或与应用程序的其他部分交互 我想知道这是不是正常的行为?!如果有办法解决这个问题 我的ListViewItem模板: <DataTemplate x:DataType="m:RepoModel"> <controls:I

uwp社区工具包版本2.2

我的listview中有几个ImageEx元素,它们被绑定到URL。所以,当我启动应用程序时,UI线程似乎被ImageEx阻塞了。在从Internet加载所有ImageEx图像之前,我无法移动应用程序窗口、调整窗口大小、滚动列表或与应用程序的其他部分交互

我想知道这是不是正常的行为?!如果有办法解决这个问题

我的ListViewItem模板:

<DataTemplate x:DataType="m:RepoModel">
   <controls:ImageEx x:Phase="3"
        IsCacheEnabled="True"
        Source="{x:Bind owner.avatar_url}"
        Height="125" Width="125"                                       
        PlaceholderSource="ms-appx:///Assets/pl.png"/>

控件异步下载图像,同时显示加载指示器。然后,源映像存储在应用程序的本地缓存中,以保留资源和加载时间

在我的测试中,如果启用
IsCacheEnabled
属性,则无法流畅地调整窗口大小。因为缓存图像时有很多I/O操作会导致UI冻结

如果要在加载图像时流畅地调整窗口大小,可以禁用

IsCacheEnabled
属性。

正如Shawn Kendrot提到的,他们已经在
uwp社区工具包版本3.0
上修复了它,我只是测试了稳定的版本,我可以批准这应该在3.0版本中修复。你能试着用最新的开发版本进行测试吗:@ShawnKendrot我用的是稳定版本。我会尝试3.0预览版,如果一切顺利,我会在这里更新