我应该如何知道以编程方式在面板中加载哪个表单

时间:2013-12-03 04:51:43

标签: c# forms panel

我有一个表单,其中包含一个面板和三个名为save和loadForm1,loadForm2的按钮。当我单击loadForm1(2)按钮时,它会将特定表单加载到面板中。

但我只有一个保存按钮。我想将面板中表单上的数据保存到数据库中..

如何访问特定表单? (我的意思是当我点击保存按钮时,我想知道面板中加载了哪个表格)

2 个答案:

答案 0 :(得分:1)

var form = Panel1.Controls.OfType<Form>().First();

if(form.Name =="Form1") // or you can check ID
{

}

答案 1 :(得分:0)

Panel有Children属性,实际上是数组。每个控件都有Tag属性,你可以在这里写任何你想要的。因此,当您将某个控件加载到面板中时,只需使用某个值初始化其Tag属性,并在按下保存按钮时检查其标记属性值。

var form1 = new SomeControl();
form1.Tag = 1;
yourPanel.Children.Add(form1);

// and then somewhere in code
if (yourPanel.Children[0].Tag == 1) 
{
    // control 1 action
}

这是我想的最简单的方式。