高DPI分辨率并且缩放比例后下DataGridView显示问题

本人笔记本是win10系统,分辨率是2880*1800,缩放200%。


高DPI分辨率并且缩放比例后下DataGridView显示问题_第1张图片

遇到一个奇怪的问题,在这个设置下使用DataGridView会有显示问题,拖动列的时候会重影,显示的也很奇怪。

试了一下双缓存,问题就解决了。

代码如下:

public Form1()

        {

            //设置窗体的双缓冲

            this.SetStyle(ControlStyles.OptimizedDoubleBuffer | ControlStyles.ResizeRedraw | ControlStyles.AllPaintingInWmPaint, true);

            this.UpdateStyles();

            InitializeComponent();

            //利用反射设置DataGridView的双缓冲

            Type dgvType = this.dataGridView1.GetType();

            PropertyInfo pi = dgvType.GetProperty("DoubleBuffered",

                BindingFlags.Instance | BindingFlags.NonPublic);

            pi.SetValue(this.dataGridView1, true, null);

        }

但是这种设置下好像还有很多其他控件的显示问题,挺烦的,有没有人也遇到过?

你可能感兴趣的:(高DPI分辨率并且缩放比例后下DataGridView显示问题)