日期:2014-05-20  浏览次数:21016 次

c#写的winForm程序中界面上很多控件,应该如何分离Form的代码?
我用c#实现了一个winForm程序,
其中界面上控件很多,而且很多都是用代码动态添加的控件,
这些控件又做了界面美化,外观变的很好看了,
但是问题是,我操作这些控件的代码都写在这个winForm的winForm.cs文件中,
这样这个文件的代码就非常非常多了,有差不多快上万行了,
所以我觉得我在这个winForm中美化控件界面和控制控件显示是不太好的的,
想在winForm.cs之外重新建立几个class文件来做这些工作,
想请教一下这里的高人给个方案或者示例网址,看如何来解决这个问题,如何把对控件的控制写在winForm.cs之外的文件中去?

------解决方案--------------------
可以自己写一个控件库。
比如写一个新的NewButton类,继承原来的Button类,然后对界面进行美化。以此类推,这样每一个控件都有自己的.cs文件。最后只要把新的控件拖到窗体中即可。
------解决方案--------------------
up,关注ing
------解决方案--------------------
http://www.35ba.cn/bc/200609/33325.html

http://www.welan.com/27093/


------解决方案--------------------
把你美化后的控件封成一个新的控件。相关的代码放在里面。winForm.cs中简单使用 就可以了
------解决方案--------------------
偷学到一招,谢谢!
我看应该为每个控件都写一个类,然后再继承,这样修改方便,也体现了面向对象的思想,代码更加规范化了.
当然,有些时候为了简便,偷偷懒,少写定义几个类,牺牲规范化.
但我不提倡.
------解决方案--------------------
to 可不可以在一个class文件中控制一个winForm中的控件?

當然可以。

------解决方案--------------------
VS2005就已经分离了设计器自动生成的代码
------解决方案--------------------
结合yufenfeila(雨纷飞啦) 和 dahuzizyd(你就是我心中的女神) 两位所说的办法,lz应该较容易实现你的需求...
------解决方案--------------------
不仅仅是 winForm.cs 这个文件,而是在 class1.cs , class2.cs , class3.cs …… 中
-----------------------------------------------
partial class
------解决方案--------------------
我操作这些控件的代码都写在这个winForm的winForm.cs文件中,
这样这个文件的代码就非常非常多了,有差不多快上万行了
-------------------------
晕,居然有上万行的文件,严重违反面向对象原则与编程规范啊。为何不分开呢,比如美化button的,就写一个ButtonExtension.cs,美化GridView的,写一个GridViewEx.cs .....

------解决方案--------------------
你继承一下控件自己写一个,然后不就问题解决了?

------解决方案--------------------
哎,规范化需要一个循序渐进的过程,大家都在这条漫漫长路中前行
------解决方案--------------------
比如:用一个对象专门处理winform初始化,把当前的winform 传进去。所有涉及到的控件都自己重新封装一下。