DataGridView에 source를 등록 후 

새로운 row나 값을 추가 할 때 DataGridView가 깜빡이는 현상을 볼 수 있습니다.

 

이것을 해결하기 위해서 더블버퍼를 설정 해 주어야 합니다.

 

 


   

using System.Reflection;


public partial class Form1 : Form
{
   ...
   
   
  ...


  private void Init_DataGridView()
  {
    dataGridView1.DoubleBuffered(true);
  }
}

public static class ExtensionMethods 
{ 
  public static void DoubleBuffered(this DataGridView dgv, bool setting) 
  { 
    Type dgvType = dgv.GetType(); 
    PropertyInfo pi = dgvType.GetProperty("DoubleBuffered", BindingFlags.Instance | BindingFlags.NonPublic); 
    pi.SetValue(dgv, setting, null); 
  } 
}

 

 

출처: https://stackoverflow.com/questions/41893708/how-to-prevent-datagridview-from-flickering-when-scrolling-horizontally

반응형

+ Recent posts