У меня есть приложение winforms, разработанное на C#, которое включает в себя много рисунков на экране. Картина включает визуализацию пользовательских элементов управления и других 2D-объектов. Теперь проблема заключается в том, что для рисования всего экрана требуется около 4-5 секунд. Я оптимизировал код до уровня, где все необходимые данные были доступны в самой памяти, а не для чтения с диска или сети.Использование вызовов Win32 API через классы .NET GDI
Для дальнейшего сократить время рендеринга я планировал пойти на следующие варианты
вызовов непосредственно GDI функции выставленного WIN32API, вместо того, чтобы использовать классы GDI, предоставляемые .NET
Используйте DirectX, поскольку я слышал, что он очень эффективен при рендеринге. В моем приложении нет какого-либо 3D-рендеринга.
Пожалуйста, помогите мне решить, какой вариант пойти? существуют ли какие-либо другие параметры, например, любые высокопроизводительные сторонние компоненты или библиотеки.
Сколько у вас органов управления? Сотни? –
@ HansPassant: около 5K до 7K управляет – AbrahamJP
Ничего себе, это поражает всего 7 секунд. Вам придется сократить это примерно до 100 или около того. –