いくつかのデータを表示しているwpfデータグリッドがあります。
スクロールバーがあり、スクロールバーをスクロールすると、データグリッドのデータコンテキストを変更して他のデータを表示します。
この機能は機能していますが、スクロールボタンを押したままにすると、スクロールバーがかなり遅く見えることがわかりました。
しばらくログインすると、処理部分(新しいデータの取得、データグリッドのデータコンテキストの設定)に00:00:00.1198219前後かかるように見えますが、次のスクロールイベントをインターセプトするにはさらに00:00:00.3100004かかります。
これは、スクロールを実行するのに約0.5秒かかることを意味します。
私はこれに固執しているだけですか、それともそれをスピードアップするために私ができることはありますか?
関連性があると思われるコードを投稿しますが、他に必要な場合はお知らせください。
private void scrollBar1_Scroll(object sender, System.Windows.Controls.Primitives.ScrollEventArgs e)
{
Console.WriteLine(DateTime.Now - lastScroll);
Stopwatch sw = new Stopwatch();
Console.WriteLine("Got new load");
sw.Start();
getLoad();
sw.Stop();
Console.WriteLine("Full process took " + sw.Elapsed.ToString());
lastScroll = DateTime.Now;
}
private void getLoad()
{
double startRecord = scrollBar1.Value;
DataTable dt = panelInterface.LoadDT(Convert.ToInt32(startRecord), numberOfRecordsToLoad);
dtgMain.DataContext = dt;
}