Winform程序,Panel及其子控件刷新的问题

lbzxyp 2016-08-13 11:03:57
Winform程序,窗口上有个个Panel,另外有个继承自UserControl的自定义控件,自定义控件的父窗口为Panel,现在有个问题,在自定义控件上绘图,在一个按钮设置新的内容,并调用Panel.Refresh(),每点击用一次按钮,自定义控件上的Paint事件根据设置的内容重新绘制一次,大部分情况下能够正常刷新,但偶尔有刷新不成功的情况,可以确保Panel.Refresh()已经调用了,但Panel及自定义控件上的图形还是上次绘制的图形,没有根据设置的内容发生变化(Paint事件没有发生),如果再次单击按钮,自定义控件上的图形又正确刷新了,我想问的的是,Refresh()调用后,有可能不触发Panel的Paint事件吗?会因为某些因素导致Paint事件不产生吗?
...全文
1239 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuzuning 2016-08-15
  • 打赏
  • 举报
回复
子容器的刷新在父容器刷新之前 如果子容器在刷新时使用的父容器刷新后的内容,那么出现你说的现象是正常的
秋的红果实 2016-08-14
  • 打赏
  • 举报
回复
同时刷新自定义控件Panel,和窗体的Panel
长空X 2016-08-14
  • 打赏
  • 举报
回复
试试改在窗体上,而不是控件上。。 第二个就是试试加个定时器,点击按钮就打开定时器刷新。 我估计你这种属于单线程,好像是有可能的。具体原因记不清了,,

111,092

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧