亲们,程序中,点击一个按钮,动态创建一个新的窗体,在新窗体中,如何创建一个timer事件和tooltip事件
1、我知道能够动态创建按钮、标签之类的
            Button btn = new Button();
            btn.Name = "button1";
            btn.Height = 10;
            btn.Width = 10;            form2.Controls.Add(btn);但是timer和toolTip是组件,无法用controls添加,请各位高人指点一下。谢谢!@!!@#2、还有,我们静态创建的窗体中都有form_load事件,可以初始化一些静态的参数和数据,动态添加窗体中的form_load如何执行?3、动态添加的窗体中如何添加窗体全局的静态变量,static string mystr="123456"

解决方案 »

  1.   

    1、为什么一定要一个窗体里面向另外一个窗体里添加成员呢,有这样的需求?
    2、Formx.Load+=new EventHandler(Formx_Load);
    3、你难住我了
      

  2.   

    没有办法给动态窗体增加“全局的静态变量”。不过你可以创建了静态的全局变量,使用委托在窗口中使用。
    可以给窗体增加一个Timer数组,然后添加之。
      

  3.   

    1、由于我的窗体全都是动态创建的(具体哪个窗体需要看数据库的配置),窗体中动态创建了很多的图标,每个图标的名称都不一样,我想用tooltip显示出来,还有就是窗体动态查询数据库的状态,当状态不一致的时候,图标的颜色不一样,需要动态切换,所以想动态添加个类似timer的东西。
    2、我一会儿试一下2L的看行不行,呵呵
    3、如果真的不行的话,只能用3L的方法,定义一个整体的变量,我创建窗体的时候动态更改
      

  4.   

    第一,把那些组件放 Tag 里,有多个就先组成 object[] 再放
    第二,外部一样能注册事件
    第三,既然是静态变量,放哪都一样,就放这主窗体里好了,如果不是静态的,一样放 Tag 里去
      

  5.   

    Button btn = new Button();
    btn.Name = "button1";
    btn.Height = 10;
    btn.Width = 10;List<object> coms = new List<object>();ToolTip toolTip = new ToolTip();
    // ......
    coms.Add(toolTip);System.Windows.Forms.Timer tmr = new System.Windows.Forms.Timer();
    // ......
    coms.Add(tmr);form2.Controls.Add(btn);
    form2.Tag = coms;
      

  6.   

    1.没啥是不可以添加的,比如tooptip我们来看他怎么加
      ToolTip tip = new ToolTip();
      tip.SetToolTip(this.button1, "aaaa");
    2.Formx.Load+=new EventHandler(Formx_Load);3.这个还真是奇怪要求,为啥需要这种要求呢,毕竟代码是在代码设计期完成的,你在设计期总需要编写调用他的代码,你都不知道他是啥,你还怎么调用???当然ls的可以用,但是你任然需要去编写代码去调用他。总体上我认为你可能需要的不是c# 而是ironpython或者luaInterface,也许qt4dontnet这类玩意
      

  7.   

    实际上如果真要自我描述,你可能需要一整套的描述规则。Xform标准可以参考也可以参考xaml话说回来,你这要求砸越看越像xaml呢?
      

  8.   

    谢谢各位,已解决,多谢avphoenixi,按照你的方法,实现了我想要的,呵呵,
    没有用到wpf的东西,最初开发程序的时候wpf还没有出来呢