WPF渲染速度越慢,处理器越多

Chr*_*oph 6 wpf performance

我真的很茫然.我有一个包含ItemsControl的扩展器,看起来像这样;

<ItemsControl ItemsSource="{Binding Source={StaticResource SomeItems}}">
   <ItemsControl.ItemTemplate>                                
      <DataTemplate>
         <StackPanel>
            <ContentControl Content="{Binding}" />
         </StackPanel>
      </DataTemplate>
   </ItemsControl.ItemTemplate>                                
</ItemsControl>
Run Code Online (Sandbox Code Playgroud)

这在大多数机器(单核和双核)上扩展时都可以正常使用.出于某种原因,当在具有四核(i7)的全新机器上运行时,扩展此扩展器需要几分钟.我做了一些分析,当WPF测量元素时,似乎存在线程同步问题,实际花费测量和渲染的时间似乎可以忽略不计,等待线程同步的时间花费是其中的大部分.有没有人见过这样的东西?

仅供参考 - 我确实在三台不同的四核(i7)机器上尝试了这一点并且遇到了同样的问题.在许多旧机器上运行没有问题.我确认机器已完全打补丁,WPF正在使用硬件渲染.完成了强制性应用程序和框架重新安装.

还有什么想法可以看吗?

谢谢

- 来自评论的一些更新 -

- 扩展器已经扩展,折叠和重新扩展在问题机器上很快

- 即使禁用硬件渲染,行为也是一样的.我认为应该从等式中删除显卡.

- 我们正在运行.Net 4.0

- 根据要求提供一些规格 - 在Intel Core i7上赢得XP SP 3(4核)M 620 @ 2.67GHZ 2.98 GB RAM 275 GB可用存储

Jar*_*Par 1

我的第一个想法是尽可能将显卡排除在外。尝试禁用 Aero 主题并返回到 Windows 基本版。

您还可以发布机器的完整规格吗?硬件、软件、32 位与 64 位、.net 版本等...

  • @Christopherous,是的,我同意。此时我会考虑在 http://connect.microsoft.com 上提交错误 (2认同)