点击一个TextBox,弹出了一个窗口,再点击一下,又弹出了一个。
如何才能做到只弹出一个窗口---也就是说,弹出一个窗口后,
再去点击TextBox时,不会再弹出窗口,除非把原有的窗口关闭~~
本人刚接触C#不久,希望各位多多帮忙。 简要说一说做法,谢谢!

解决方案 »

  1.   

    使用模式对话框可以吗?form2.ShowDialog();关闭后,才可以继续执行。
      

  2.   

    <asp:textbox onclick="show()">
    var exsit = false;
    function show()
    {
    if(exsit)return;
    exsit = true;
    window.open();
    }
      

  3.   

    不是模式对话框,是自己做的一个窗口,一个计算器,用来向TextBox传数据的
    窗口有这个属性吗?
      

  4.   

    你是打开新的窗体吗?
    以模式窗口的格式打开就行了,点击TextBox时打开窗口,你直接写:
    要打开的窗体名  f=new 要打开的窗体名();
    f.ower=this;
    f.ShowDialog();
    这样子就只打一个,而且也只有当前打开这个窗口是活动的,必须关闭它才能操作你的TextBox
      

  5.   

    可通过div,js实现。可参考梅花雪日历。
    http://www.cnblogs.com/wppt/archive/2007/05/21/754506.html
    http://www.cnblogs.com/digjim/articles/267525.html
      

  6.   

    如果用show 的话可以这样:Class Form1: ***
    {
        private Form2 form2 = null;
        mousedown处理函数
         protected void Textbox1_mouseDown(***)
         {
            if(form2 ==null || form2 .IsDisposed) 
            {
                form2 =new   Form2 (); 
            } 
             
             form2.Show();
         }
    }
      

  7.   

    你定义一个公用变量,当打开这个窗体时把该量设为true,如果关闭窗体时,将该值又变为false
    即:重写关闭事件  override on closing里面写
    这样子你点击TextBox时先判断该变量是false还是true,如果是true则打,否则不执行
      

  8.   

    我刚开始也是想设置一个变量,但TextBox所在的窗体和弹出的窗体是两个不同的窗体,
    弹出窗体里的变量怎么传到TextBox里一直都搞不清。怎么定义公有变量,这是两个窗体,变量应该定义在哪里?请指点,谢谢