我注意到如果我为任何CPU/x64构建我的WPF应用程序,启动(大约20秒)或加载新控件需要花费的时间比在x86上启动(在发布和调试模式下) ,在VS的内部或外部.甚至最简单的WPF应用程序也会出现这种情况.在这个MSDN线程中讨论了这个问题,但没有提供答案.这只发生在.NET 4.0中 - 在3.5 SP1中,x64与x86一样快.有趣的是,微软似乎知道这个问题,因为VS2010中新的WPF项目的默认值是x86.
这是一个真正的错误还是我做错了?
编辑:可能与此相关:C#.NET 4.0中的慢速数据绑定设置时间.我正在大量使用数据绑定.
我用wpf创建了一个简单的应用程序,并注意到一个奇怪的行为:应用程序有两个按钮,具有不相关和非常简单的行为.每当我启动它时,第一次点击任何按钮需要两到三秒钟才能完成.只有第一次点击很慢.随后的点击几乎是即时的,正如他们的简单行为所预期的那样.我搜索过google和SO,但似乎没有人遇到同样的问题.
申请的细节是:
SQL Server 2008上的NorthWind数据库;
Linq to SQL自动生成的类;
Customers 表作为DataGrid;
按钮1 OnClick事件:Context.SubmitChanges();
Button 2 OnclickEvent在MainWindow类上交替使用布尔值DependencyProperty .
如您所见,设置非常简单.如果每次单击按钮都很慢,我会将它们归因于WPF性能问题.奇怪的是,每当我启动它时,只有第一次点击响应缓慢,其他是正常的.