Когда я использую элементы управления DevExpress для WPF-загрузки, увеличивается время загрузки окна, в котором они объявлены. Но при втором доступе - быстро загружается. Нет ли способа предварительно загрузить все необходимые dll / темы при запуске программы (пусть на это ушло 5-10 секунд!), Но быстро загрузить их в общей программе? Я немного поискал, нашел что-то вроде этого:
private static void RunTypeInitializers(Assembly a)
{
Type[] types = a.GetExportedTypes();
for (int i = 0; i < types.Length; i++)
{
RuntimeHelpers.RunClassConstructor(types[i].TypeHandle);
}
}
private static void PreloadControls()
{
ThemeManager.ApplicationThemeName = Theme.Office2007BlueName;
ThemeManager.SetThemeName(new TextEdit(), Theme.Office2007BlueName);
ThemeManager.SetThemeName(new TreeListControl(), Theme.Office2007BlueName);
RunTypeInitializers(Assembly.GetAssembly(typeof(TextEdit)));
RunTypeInitializers(Assembly.GetAssembly(typeof(TreeListControl)));
RunTypeInitializers(Assembly.GetAssembly(typeof(BarManager)));
//GC.KeepAlive(typeof(TreeListControl));
//GC.KeepAlive(typeof(BarManager));
//GC.KeepAlive(typeof(TreeListView));
//GC.KeepAlive(typeof(DevExpress.Xpf.Editors.Settings.MemoEditSettings));
//GC.KeepAlive(typeof(DevExpress.Xpf.Editors.Settings.TextEditSettings));
}
Но это не помогает. Первая загрузка еще долгая.