积极答复者
C# 画图问题。

问题
-
问题是这样的:
自定义了一个用户控件UControlsSon, 然后在OnPaint事件中,画出背景图片。
再自定义了一个用户控件UControlsMain,添加一个Panel控件,然后根据数据库中一个表的记录在Panel控件中一个个添加用户控件UControlsSon(比如说,每行添加8个UControlsSon,总共有10行),就是根据DataTable的行数,UControlsSon控件自身的高度,宽度,之间的间隔,算出其位置,一个个加载上去,
由于数据比较多,Panel会有滚动条,
最后在窗体FormMain中添加用户控件UControlsMain,
运行后,窗体上是一个个逐渐的显示用户控件UControlsSon控件,我希望能一次性的显示出来,这要怎么做?这是问题一?
还有在拖动用户控件UControlsMain中的Panel时,产生了画面闪烁的问题,这是问题二?
请指教有没好的解决方法。。
答案
-
dear
1.控件不闪烁,设定DoubleBuffered试试
[WinForm] 如何使控制項不閃爍/How to use double buffer for controls
http://www.dotblogs.com.tw/yc421206/archive/2010/10/20/18472.aspx
[Control.DoubleBuffered 屬性]
http://msdn.microsoft.com/zh-tw/library/system.windows.forms.control.doublebuffered%28VS.80%29.aspx
2.UControlsSon您是如何生成??是UControlsSon一次画好后在Show出来吗?
秘訣無它,唯勤而已 http://www.dotblogs.com.tw/yc421206/- 已编辑 余小章MVP 2010年12月29日 0:44
- 已编辑 Leo Liu - MSFTModerator 2010年12月31日 3:44 Enabled links given.
- 已建议为答案 Leo Liu - MSFTModerator 2011年1月4日 10:26
- 已标记为答案 Leo Liu - MSFTModerator 2011年1月8日 3:15
全部回复
-
dear
1.控件不闪烁,设定DoubleBuffered试试
[WinForm] 如何使控制項不閃爍/How to use double buffer for controls
http://www.dotblogs.com.tw/yc421206/archive/2010/10/20/18472.aspx
[Control.DoubleBuffered 屬性]
http://msdn.microsoft.com/zh-tw/library/system.windows.forms.control.doublebuffered%28VS.80%29.aspx
2.UControlsSon您是如何生成??是UControlsSon一次画好后在Show出来吗?
秘訣無它,唯勤而已 http://www.dotblogs.com.tw/yc421206/- 已编辑 余小章MVP 2010年12月29日 0:44
- 已编辑 Leo Liu - MSFTModerator 2010年12月31日 3:44 Enabled links given.
- 已建议为答案 Leo Liu - MSFTModerator 2011年1月4日 10:26
- 已标记为答案 Leo Liu - MSFTModerator 2011年1月8日 3:15
-
Hi 余小章,
相信大家都对这个问题很感兴趣,如果有时间的话可不可以关于楼主最后的需求给一个Sample或者相关的链接?
谢谢!
Hi CSharpzero,
请将你觉得有用的回复标记为答案。谢谢!
Sincerely,
Leo Liu
Leo Liu [MSFT]
MSDN Community Support | Feedback to us
Get or Request Code Sample from Microsoft
Please remember to mark the replies as answers if they help and unmark them if they provide no help.