日期:2014-05-17  浏览次数:21036 次

C#(winform)很多按钮同时更改贴图(Image)该如何处理?

RT  winform 中
我这里有几十个按钮,如果要同时切换他们的状态(就是更改它们的贴图Imgae),该怎么写代码?
难道真要像下面这样?能不能优化一下,主要从性能方面考虑,因为这样按钮有个很明显的刷新过程......

                btn_ZhengFeng.Image = NoActivated;
                btn_FuPai.Image = NoActivated;
                btn_00LYan.Image = NoActivated;
                btn_1LYan.Image = NoActivated;
                btn_2LYan.Image = NoActivated;
                btn_3LYan.Image = NoActivated;
                btn_4LYan.Image = NoActivated;
                btn_ZhaoMin.Image = NoActivated;
                btn_JuanShang.Image = NoActivated;
                btn_JuanXia.Image = NoActivated;
                btn_00LLin.Image = NoActivated;
                btn_1LLin.Image = NoActivated;
                btn_2LLin.Image = NoActivated;
                btn_3LLin.Image = NoActivated;
                btn_4LLin.Image = NoActivated;
                btn_ZiDongQiDong.Image = NoActivated;
                ...  
                ...

小弟虚心求教,请大家不吝赐教,先谢谢啦~!



winform 优化

------解决方案--------------------
上面说的背景图是所有按钮所在区域整个的背景图。

就好比桌子上有一些杯子,把杯子全做成透明的,只保留其盛水的功能。
把杯子的图案全画到桌布上,每次只换一张桌布就可以了,看上去就好像替换了一批杯子。

缺点是,布局不能有变动,背景的上的按钮图案要与实际按钮的位置一一对应。
------解决方案--------------------
总觉得,破破你怎么不给控件都命名好呀,这几十个按钮的,后来分得清吗?
命名习惯一定要好~

设置下Visible属性,不用的全部隐藏掉~