日期:2014-05-19  浏览次数:20773 次

C#调用API,从Control继承自已生成ComboBox控件!!!!遇到难题!!
用C#做智能设备的程序.因为设备的操作系统是PPC2002,所以只能采用Compact   Framework1.0框架,这个版本的框架的ComboBox的DropDownStyle只提供了DropDownList,不提供DropDown,而我要实现可输入的DropDown.

做CF程序的应该都知道OpenNETCF这个优秀的开源项目,它里面的ComboBoxEx是继承自ComboBox的,里面也不过是实现了FindString这样的方法,但还是没有提供DrowDown样式.另个,这个开源框架里还有一个ControlEx的抽象基类,允许我们从这个类继承,用CreateWindowEx来创建Win32的控件.我现在的做法是从这个ControlEx继承了下来,创建的控件在程序运行起来后可见.但我用SendMessage(this.ChildHandle,   (int)CB.ADDSTRING,   0,   pString);这种方法增加项目,返回值是成功的,但是下拉列表里确是空的.我又用SendMessage(this.ChildHandle,   (int)CB.GETLBTEXT,   index,   ptr);这种方法取得项目都是正确的,也就是说确确实实项目是添加进去了,但就是不显示出来.

我现在正尝试在完整版的Framework下实现这个控件,现在寻找高手,能够帮我分析一下问题所在!谢谢.

------解决方案--------------------
关注,帮顶.没做过这个
------解决方案--------------------
智能设备??没做过!!
------解决方案--------------------
偶不是高手 帮不了你 只能帮你顶了
------解决方案--------------------
帮你顶
------解决方案--------------------
关注,帮顶.