你首先要掌握C#语言,通常初学者可以学习C#高级编程。至于你要自定义控件开发,主要的是winform相关的知识,这自然包括winform提供的控件,你要能了解其常用的属性,然后你可以学习下GDI相关知识。并且网上自定义控件比较多,其实都是立足于C#基础上的,你可以下载一些源代码看看。推荐一个比较好的网站:codeproject。这里用很多你需要的控件,并且大多都提供了源码。
学会委托就可以了,其他动手实验就能明白了