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

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


遇到一个奇怪的问题,在这个设置下使用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);

        }

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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。