我的面板和奇怪的区域有问题。我在面板上填充了许多PictureBox
es 32x32px,此面板的一小部分区域充满了白色区域。
以下是它的样子:
您可以看到第一个PictureBox
指定了草图像,即32x32px,但下面的PictureBox只有一半的图像。这很奇怪。
我还为onClick
es指定了PictureBox
事件,将其背景更改为其他图片。如果我点击“工作”PictureBox
它的背景更改,但是当我点击“损坏的”时,它不会。
所以基本上,我的问题是 - 这种影响可能是什么原因?是否有可能在不分析代码的情况下找到它?我想避免在这里放置代码,因为它非常复杂且冗长。
我使用的是WinSpy ++,它是结果(红点是我悬停光标的地方)
所以我们可以看到PictureBox
部分隐藏在这个白色区域后面。
答案 0 :(得分:1)
我不知道问题是否仍然有效,但无论如何我都会尽力回答。这是对它的评论,但由于我不允许发表评论,我只会回答。
在使用picutreBox
事件处理程序实现某些onPaint
绘图时,我遇到了类似的问题。问题是我在pictureBox.Invalidate()
期间调用onPaint
并导致显示不需要的白色框。您可能希望避免在Invalidate()
事件中使用Refresh()
或onPaint
,如果有的话。
如果不是这种情况,则可能还有助于刷新已损坏的form
或pictureBox
。尝试在this.Refresh()
初始化后致电form
,最好是onLoad
或onShown
事件处理程序。
如果它仍然没有帮助那么问题就在其他地方,我猜有一个控件隐藏在哪里导致了这个问题。但我们需要查看一些代码才能提出任何其他建议。