解决方案 »

  1.   

    Activator.CreateInstance
    http://blog.csdn.net/adream307/article/details/7723596
      

  2.   

    既然可以点击,那么这个控件的实例已经创建了。你一般可以从事件处理函数的sender中得到实例:button_click(object sender, EventArg e)
    {
       Control 控件实例 = sender as Control;
       //...
    }
      

  3.   

    既然可以点击,那么这个控件的实例已经创建了。你一般可以从事件处理函数的sender中得到实例:button_click(object sender, EventArg e)
    {
       Control 控件实例 = sender as Control;
       //...
    }额,不是的,是按钮的tag里记录的其他自定义控件的名称,通过这个名称来创建控件的实例,并加载这个控件,而不是按钮本身,你没有看清楚题目,不过谢谢你的回答!
      

  4.   

    tag也可以是一个创建控件的函数:
    {
        button1.tag = new Func<Control>(() => new TextBox());
        button2.tag = new Func<Control>(() => new Label(){Text = "hello"});
    }
    void button_click(object sender, EventArg e)
    {
       Func<Control> creation = (sender as Control).Tag as Func<Control>;
       Control 控件实例 = creation();
       //...
    }