我正在使用winform应用程序c#。在应用程序中,我们使用了许多UserControls和Forms。
我有一个父表单,我将UserControl用作MainDashBoard。但是对于使用Forms的其他业务需求。在userControl上有一个名为LoadProperties的按钮,它将加载另一个显示某个对象的某些属性的表单。
我想知道的是,我如何才能发现当前活动的控件是UserControl或Form。因为当我按下按钮并说
时Form1 form = new Form1();
form.MDIParent= this;
form.show();
它正在加载表单,但是this.ActiveControl给了我按钮作为活动控件而不是表单。
我想获取当前加载的表单,我该怎么做。
任何人都可以帮助我......在这里。
此致 Shax。
答案 0 :(得分:1)
每个表单都有一个ActiveControl,该控件将在激活表单时获得焦点。要获取活动表单,您应该使用静态Form.ActiveForm属性。
答案 1 :(得分:0)
抱歉,我不太明白。
要找出哪个MDI孩子有效,请使用:
Form activeChild = this.ActiveMdiChild;
如果您需要检查对象的对象类型,您可以使用:
if([variable] is Form)
{
}
if([variable] is Button)
{
}
答案 2 :(得分:0)
只需保留对所有已打开表单的引用。