可以在多个表单上有一个usercontrol实例吗?

时间:2012-12-15 19:47:11

标签: winforms user-controls

是否可以在两个不同的表单上运行一个usercontrol实例?


我做了以下操作并且无效(控件只显示在最后一个表单中)。

static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);

            var control = new UserControl1();

            var form2 = new Form2();
            form2.UserControl1 = control;
            form2.Show();

            var form1 = new Form1();
            form1.UserControl1 = control;

            Application.Run(form1);
        }

1 个答案:

答案 0 :(得分:1)

我不得不说不。至少在正常的.Net操作下。如果我创建一个文本框并将其添加到form1,然后将相同的文本框实例添加到form2,form1中的文本框将字面上移动到form2。即使它起作用,也可以在两种形式之间加入像location,parentform等属性。

如果您需要具有公共实例数据,则单个类单例可能符合要求。