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

2018-01-18  本文已影响0人  kiscici

本人笔记本是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);

        }

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

上一篇 下一篇

猜你喜欢

热点阅读