我有Form1
,在这种形式下,我有此代码
Form2 frm = new Form2();
frm.ShowDialog();
现在是我的问题:如何知道form2
是否以这种方式被调用
在form2
中的Button事件中?
在form2
中的按钮事件中,我要检查ShowDialog()
是否被称为 FROM FORM1(不是来自另一种形式) ,如果单击了按钮, form2
已关闭!
答案 0 :(得分:2)
您可以使用Form.Owner Property。
Form1:
Form2 frm = new Form2();
frm.ShowDialog(this); // owner parameter
Form2:
if (this.Owner != null)
{
// Owner is not null, there is a calling form
// Do something
if (this.Owner is Form1)
{
Form1 form1 = (Form1)this.Owner; // Form1 called this form!
}
}
答案 1 :(得分:1)
请尝试更精确地询问您的要求。
public partial class Form2: Form
{
public static bool wasCalledFromForm1 = false;
public Form2 (bool form1Called = false)
{
InitializeComponent();
wasCalledFromForm1 = form1Called;
}
private void Button1_Click(object sender, System.EventArgs e)
{
if (wasCalledFromForm1) this.Close;
}
}
按钮1打开Form2:
Form2 form2 = new Form2(true);
form2.ShowDialog();
答案 2 :(得分:0)
据我所知,您想知道是否有一种方法可以检查showDialog是否已成功调用,为此,您可以使用以下代码段:-
$pattern = '~<table(?>(?!</?table).)*</table>~is';
$output = preg_replace($pattern, '', $body);
PS:-将来,请正确,仔细地撰写您的问题,以便我们更轻松地回答:) :):)
答案 3 :(得分:0)
带有构造函数的示例。
SELECT *
FROM edges AS e
JOIN nodes AS n ON e.source = n.id OR e.dest = n.id