1
我有一種場景,使用WPF作爲無模式對話框的一部分,大大超出了選擇範圍。但是,我所看到的是每次調出對話框時,它都會變慢一點,直到最終需要20秒才能啓動對話框。WinForms ElementHost因重複使用而變慢
我使用ANTS對它進行了剖析,它基本上指向我的表單的InitializeComponent部分中的三個不同位置的ElementHost:創建主機,設置背景顏色(我可以消除)以及分配子項。
雖然這發生在與主UI線程分離的UI線程上(通過創建線程,將其設置爲STA的公寓,然後在其中執行另一個Application.Run(myform)),但它仍然鎖定了主GUI因爲它非常繁忙。
如果你殺了應用程序並重新開始,問題就消失了,並且它在一段時間內表現很好。代碼的其他部分似乎沒有減慢。
在ElementHost之後有什麼我可以做的清理?