Я использую Winforms и мне нужно, чтобы запуск моей программы был максимально быстрым.Каждая миллисекунда имеет значение.
Я нашел интересное наблюдение.При добавлении изображения с использованием ресурса (способ добавления изображения в элемент управления по умолчанию в Winform), например, кнопки, загрузка формы занимает около 100 миллисекунд по сравнению с тем моментом, когда я добавляю прямое растровое изображение.Сравните:
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form1));
button1.Image = ((System.Drawing.Image)(resources.GetObject("button1.Image")));
Приведенный ниже код работает примерно на 100 мс быстрее (увеличение скорости не распространяется на дополнительные изображения):
button1.Image = new Bitmap("myimage.png");
Мне было интересно, почему первый такой медленный,и если я могу как-то ускорить это?Я предпочел бы использовать первый, потому что он встраивает картинку в exe (и я не хочу предоставлять все изображения отдельно).
Эта проблема касается, вероятно, всех элементов управления, которые позволяют добавлять изображение(Я тестировал с помощью графического окна и кнопки).