C#下 form的datagrid combobox空间
我用C#在WINCE下面写form程序,发现几个小问题啊
比如datagrid的双击事件,为嘛两次点击的距离很远也能触发双击事件啊...我觉得应该有什么系统属性可以设置吧 ..求解答
combobox空间的下拉的三角形.....因为我是几个combobox放一起,有那个三角形看起来十分不好看,能不能不要那个三角形,每次点击文本框 自动弹出下拉框进行选择?
还有就是我有几个对话框(form),由于之间需要转换,但是我采用了一种做法是定义一个全局类Globals,把对话框对象还有页面之间需要传递的数据放在这个全局类里面作为静态变量 比如public static Form1 form1;public static Form2 form2;
需要从form1跳转到form2的时候就form2.show(); form1.hide();
这样有个问题...比如Main函数中这么运行 Application.Run(Globals.form1());
然后关闭应用程序的时候 Globals.form1.Close();Globals.form2.Close(); 这样貌似不能相应form2的close消息
两个的关闭顺序调换就可以... 十分不解...
[解决办法]
双击事件,应该是系统的属性,控件没的什么设置。
LZ,你要使用系统提供的控件,有些东东是必须接受的。否则,就放弃这些控件,自己来处理界面。
[解决办法]
下拉菜单的问题:
如果不想显示三角。建立一个同尺寸的text box,设置BringToFront,盖住combo box.
然后在text box的事件中,比如getforcus,设置combo box bringToFront,就可以用下拉菜单选了。如果取值用的是text box,那在combo box 的 SelectedIndexChanged事件中将text box 的text设置为combo所选的相同的值就可以了。
[解决办法]
双击应该没办法
combobox的三角我一般都是自己用的图片把它盖住就可以了。通过给combobox发消息来控制下拉列表的弹出
using MyMessage = Microsoft.WindowsCE.Forms;public const int CB_SHOWDROPDOWN = 0x014F;public const int CB_GETDROPPEDSTATE = 0x0157;MyMessage.Message comboBoxDroppedMsg = MyMessage.Message.Create(comboBox1.Handle, CB_SHOWDROPDOWN, new IntPtr(1), IntPtr.Zero);MessageWindow.SendMessage(ref comboBoxDroppedMsg);