DataGridView のリフレッシュ パフォーマンスは、更新されるセルの数によって影響を受ける可能性があります。希望の更新レート。パフォーマンスを最適化するには、DataGridView のダブル バッファリングを有効にすることをお勧めします。
通常、DataGridView ではダブル バッファリングに直接アクセスできません。このプロパティにアクセスするには、サブクラスを作成するか、リフレクションを使用します。
サブクラス:
DataGridView から継承し、DoubleBuffered プロパティを公開する新しいクラスを定義します:
public class DBDataGridView : DataGridView { public new bool DoubleBuffered { get => base.DoubleBuffered; set => base.DoubleBuffered = value; } public DBDataGridView() { DoubleBuffered = true; } }
次に、DataGridView を DBDataGridView に置き換えます。 form.
リフレクション:
リフレクションを使用してダブル バッファリングを設定するには、この汎用関数を使用します。
using System.Reflection; static void SetDoubleBuffer(Control ctl, bool DoubleBuffered) { typeof(Control).InvokeMember("DoubleBuffered", BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.SetProperty, null, ctl, new object[] { DoubleBuffered }); }
関数を呼び出してダブル バッファリングを有効にします。 DataGridView:
SetDoubleBuffer(dataGrid, true);
以上が頻繁に更新する場合に DataGridView のリフレッシュ レートを向上するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。