Скоріше за все запізно, але таки настрочу.
1. ви скоріше за все плутаєте опис вашего вікна/class (технічно вікно і є class), зі створенням екземпляру цього вікна. Вам вище вже про це писали, але якщо коротко: можна оголосити 100500 вікон, але створювати в моменті лише одне і це займатиме мінімум місця в RAM. Можна оголосити один тип вікна, але створити 100500 копій, і це виїсть всю оперативну пам'ять.
2. Закриття вікна повино супроводжуватись знищенням посилання на об'єкт наприклад шляхом currentWindow = null. Лише в цьому разі GC зачисте вікно, при умові що на його властивости/поля/методи не посилаються інші об'єкти. Тут питання скоріше в тому наскільки гарно ви вмієте будувати архітектуру застосунку, щоб уникати жорстких зв'язків між класами та створюємими об'єктами.
3. загалом WPF це технологія котра передбачає використання патерну MVVM. Як на мене "багато вікон" загалом погана ідея, зручніше мати одне вікно і купу UserControl. Чомусь новачки дуже рідко використовують UserControl, хоча с точки зору розробки це набагато краще.
4. Студія пережує хоч 100500 вікон. Хоча така кількість вікон викликає певні питання: там дійнос неможливо систематизувати відображаєму інформацію, щоб мати кілька типів вікон, і просто в рантаймі визначати що показувати, а що ні?
Torbins написав:Тримати картинки прямо в формах - це погана ідея
Абсолютно нормальна ідея для невеликих зображень, що завжди треба відображати, наприклад логотип застосунку. Інше питання що там за зображення у автора теми.
reverse2500 написав:якщо в тебе ще SSD вінчестер, то більший факт що буде в оперативній пам'яті
HetmanNet написав:Але чесно окрім пам'яті хвилювався би за процесор, бо перемикань контексту схоже буде пісець як дофіга.
Вперше чую про таке. Можливо я не правий, але наскільки знаю це працює не так, і той факт що програма на SSD і буде створюватись багато вікон в процесі роботи не повинно створювати проблем.