Dot-Net

wpf調整大小完成

  • June 11, 2015

所以我需要在程序上為網格生成背景圖像,只需要 0.1 秒。

所以我可以連接到 SizeChanged 事件,但是當你調整圖表大小時,它會每秒觸發 30 次,因此調整大小事件明顯滯後。

有誰知道連接到調整大小事件並測試天氣的好方法,使用完成調整大小,我嘗試簡單地檢查滑鼠向上/向下狀態,但是當調整大小事件觸發時,滑鼠幾乎總是向下。

在調整大小時,您可以啟動一個短暫的計時器(例如 100 毫秒),在每次調整大小時重置該計時器以防止它消失。當最後一次調整大小發生時,計時器將結束,然後您可以繪製背景圖像。

例子:

Timer resizeTimer = new Timer(100) { Enabled = false };

public Window1()
{
   InitializeComponent();
   resizeTimer.Elapsed += new ElapsedEventHandler(ResizingDone);
}

void ResizingDone(object sender, ElapsedEventArgs e)
{
   resizeTimer.Stop();
   GenerateImage();
}

private void Window_SizeChanged(object sender, SizeChangedEventArgs e)
{
   resizeTimer.Stop();
   resizeTimer.Start();
}

引用自:https://stackoverflow.com/questions/2046756