Wpf 延迟/延迟加载CollectionViewSource?

Wpf 延迟/延迟加载CollectionViewSource?,wpf,performance,lazy-loading,collectionviewsource,deferred-loading,Wpf,Performance,Lazy Loading,Collectionviewsource,Deferred Loading,当您在Resources部分创建CollectionViewSource时,集合Source是否在资源初始化(即Resources持有者初始化)或数据绑定时加载 是否有一种简单的方法来进行CollectionViewSource延迟加载?延迟加载?显式加载?答案是,CollectionViewSource只要未被请求,就不会初始化其Source属性 下面是我的测试示例: <Window x:Class="MainWindow" xmlns="http://schemas.

当您在
Resources
部分创建
CollectionViewSource
时,集合
Source
是否在资源初始化(即
Resources
持有者初始化)或数据绑定时加载


是否有一种简单的方法来进行
CollectionViewSource
延迟加载?延迟加载?显式加载?

答案是,
CollectionViewSource
只要未被请求,就不会初始化其
Source
属性

下面是我的测试示例:

<Window 
    x:Class="MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:src="clr-namespace:WpfApplication2">
  <Window.Resources>
    <CollectionViewSource x:Key="mySource">
      <CollectionViewSource.Source>
        <src:Collection />
      </CollectionViewSource.Source>
    </CollectionViewSource>
  </Window.Resources>
  <!--ListView ItemsSource="{Binding Source={StaticResource mySource}}"/-->
</Window>

结果:只有当
ListView
未注释时,项目才会关闭。

答案是,
CollectionViewSource
只要未请求,就不会初始化其
Source
属性

下面是我的测试示例:

<Window 
    x:Class="MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:src="clr-namespace:WpfApplication2">
  <Window.Resources>
    <CollectionViewSource x:Key="mySource">
      <CollectionViewSource.Source>
        <src:Collection />
      </CollectionViewSource.Source>
    </CollectionViewSource>
  </Window.Resources>
  <!--ListView ItemsSource="{Binding Source={StaticResource mySource}}"/-->
</Window>
结果:仅当
列表视图
未注释时,项目才会关闭