とりあえずWPFのDataGridとWindowsのDataGirdViewで試してみましたが、
WPFのほうがスムーズでCPU使用率も低くなりました。
DataGirdViewの仮想モードの使い方が間違ってるのかな。

そして時間がががががが