最近在手持端(wince系统)上有个控件用的比较频繁:openFileDialog,遇到一个比较烦人的问题就是每次打开对话框后,对话框的fileName属性对应的textBox栏会自动获取焦点,从而引发GetFocus()事件调出输入面板,然后这个在手持设备屏幕上看起来很大的输入面板就把一些重要信息给挡住了,请教大神这种情况如何处理?附图如下:
winformtextboxwince

解决方案 »

  1.   

    在GetFocus()事件做判断,不想它出现的场合就跳过去。
      

  2.   

    我在代码中没有预先绑定啊,我调用openFileDialog.ShowDialog()方法后对话框出现后就这样了
      

  3.   

    OpenFileDialog不是你定制的窗口,你要控制它就得反射,比较麻烦,所以你最好自己设计一个类似功能的窗口。
      

  4.   

    你可以定义一个全局变量,用来记录当前的编辑模式,比如使用boolean bShowDialog;打开对话框前设置bShowDialog=true; 给文本框赋完值设置为bShowInput=false;在获取焦点的事件里判断只有当bShowDialog=false的时候再弹出输入界面