0

我对 DataGridView 控件有疑问。在某些操作过程中,网格被一个半透明的对话框覆盖(以向用户指示操作并防止用户按下按钮等)。在此期间,网格以大约 1Hz 的频率更新。在 Windows XP 下,DataGridView 控件偶尔会在掩蔽对话框上方“闪烁”一秒钟 - 没有足够的时间来实际执行任何操作,但还是有点碍眼。我还注意到,在运行 Window 7 的开发机器上,问题没有出现。我正在使用.NET v3.5。任何帮助,将不胜感激。

4

2 回答 2

0

我只对 Xp 有一个奇怪的闪烁问题(尽管这就是相似之处的结束)。以给您带来问题的形式尝试一下:

Protected Overrides ReadOnly Property CreateParams() As CreateParams
Get
    Dim cp As CreateParams = MyBase.CreateParams
    cp.ExStyle = cp.ExStyle Or &H2000000
    Return cp
End Get
End Property
于 2011-03-01T21:55:28.533 回答
0

Win32 窗体不透明度不是真正的不透明度 - 而是它下面的图像的副本。这是闪烁的原因,而不是我见过的解决方法。

您的 Win7 问题也存在 - 但由于该机器和显卡的处理速度要快得多,您实际上并没有看到重绘。

WPF 使用真正的不透明度,因此不会有这个问题。

于 2011-03-01T22:04:24.277 回答