C# 如何在(同一节目的)两种不同形式之间发起活动

C# 如何在(同一节目的)两种不同形式之间发起活动,c#,winforms,event-handling,C#,Winforms,Event Handling,我有一个MDI表单,它将打开一个登录表单,以便对用户进行身份验证 当用户点击登录按钮并正确验证时,我想触发一个事件,父窗体可以拾取并更改一些变量((authenticated=true),例如) 我知道如何在文本框或costude用户控件中执行此操作,但我不清楚如何在表单之间执行此操作,因为我通常通过designer视图执行此操作 是否有人可以引导我在不同的窗体上触发事件?在父窗体中,类似于: loginForm.Authenticated += MyEventHandler; 或 或 为什么

我有一个MDI表单,它将打开一个登录表单,以便对用户进行身份验证

当用户点击登录按钮并正确验证时,我想触发一个事件,父窗体可以拾取并更改一些变量((authenticated=true),例如)

我知道如何在文本框或costude用户控件中执行此操作,但我不清楚如何在表单之间执行此操作,因为我通常通过designer视图执行此操作


是否有人可以引导我在不同的窗体上触发事件?

在父窗体中,类似于:

loginForm.Authenticated += MyEventHandler;


为什么不能只显示登录表单,然后等待它将数据返回到父表单?请使用ShowDialog方法显示表单。这将阻止调用代码,直到关闭登录表单。关闭登录表单后,调用代码可以从添加到登录表单的属性中读取所需的数据。不需要事件。如果showdialog==dialogreslut.ok),您如何将其用于表单?
loginForm.Authenticated += delegate { /* Code here */ };
loginForm.Authenticated += (sender, args) => { /* Code here */ };