ListView 中的 ImageEx 冻结 UIThread
ImageEx in ListView freezes UIThread
uwp-community-toolkit version2.2
我的列表视图中有几个 ImageEx 元素,它们绑定到 url。因此,当我启动我的应用程序时,UI 线程似乎被 ImageEx 阻止了。在从 Internet 加载所有 ImageEx 图像之前,我无法移动应用程序 window、调整大小 window、滚动列表或与应用程序的另一部分交互。
我想知道这是否是正常行为?!如果有办法解决这个问题?!
我的 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"/>
The ImageEx
control downloads images asynchronously, while showing a loading indicator. Source images are then stored in the application's local cache to preserve resources and load time.
对于我的测试,如果您启用 IsCacheEnabled
属性,您将无法流畅地调整大小 windows。因为有很多I/O操作导致图片缓存时UI卡顿
如果你想在加载图片时流畅地调整windows大小,你可以禁用
IsCacheEnabled
属性.
正如 Shawn Kendrot 提到的,他们已经在 uwp-community-toolkit version3.0
上修复了它,我只是测试了稳定版本,我可以批准
uwp-community-toolkit version2.2
我的列表视图中有几个 ImageEx 元素,它们绑定到 url。因此,当我启动我的应用程序时,UI 线程似乎被 ImageEx 阻止了。在从 Internet 加载所有 ImageEx 图像之前,我无法移动应用程序 window、调整大小 window、滚动列表或与应用程序的另一部分交互。
我想知道这是否是正常行为?!如果有办法解决这个问题?!
我的 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"/>
The
ImageEx
control downloads images asynchronously, while showing a loading indicator. Source images are then stored in the application's local cache to preserve resources and load time.
对于我的测试,如果您启用 IsCacheEnabled
属性,您将无法流畅地调整大小 windows。因为有很多I/O操作导致图片缓存时UI卡顿
如果你想在加载图片时流畅地调整windows大小,你可以禁用
IsCacheEnabled
属性.
正如 Shawn Kendrot 提到的,他们已经在 uwp-community-toolkit version3.0
上修复了它,我只是测试了稳定版本,我可以批准