c#窗体传值用法实例详解

2019-12-26 12:28:33王振洲

Form.OwnedForms 属性。获取 Form 对象的数组,这些对象表示此窗体拥有的所有窗体。

语法,public Form[] OwnedForms { get; }

此属性返回包含此窗体拥有的所有窗体的数组。要使某窗体归另一个窗体所有,可调用 AddOwnedForm 方法。分配给所有者窗体的窗体将保持被拥有状态,直到调用了 RemoveOwnedForm 方法。如果窗体是多文档界面 (MDI) 父窗体,则除了当前打开的所有 MDI 子窗体外,此属性将返回所有显示的窗体。

Form.MdiChildren 属性。获取窗体的数组,这些窗体表示以此窗体作为父级的多文档界面 (MDI) 子窗体。

语法,public Form[] MdiChildren { get; }

此属性使您得以获取对当前在某 MDI 父窗体中打开的所有 MDI 子窗体的引用。若要创建 MDI 子窗体,请将要成为 MDI 父窗体的 Form 分配给该子窗体的 MdiParent 属性。可以使用此属性依次通过所有 MDI 子窗体,以执行一些操作,如当 MDI 父窗体关闭时将数据保存到数据库中,或者根据应用程序中执行的操作更新子窗体上的字段。

Form.MdiParent 属性。获取或设置此窗体的当前多文档界面 (MDI) 父窗体。

语法,public Form MdiParent { get; set; }

若要创建 MDI 子窗体,请将要成为 MDI 父窗体的 Form 分配给该子窗体的 MdiParent 属性。可以从某 MDI 子窗体使用此属性来获取所有子窗体都需要的全局信息或者调用对所有子窗体执行操作的方法。

Form.ActiveForm 静态属性。获取此应用程序的当前活动窗体。

语法,public static Form ActiveForm { get; }

表示当前活动窗体,或者如果没有活动窗体,则为空引用。可以使用此方法获得对当前活动窗体的引用,以在该窗体或其控件上执行操作。

Form.ActiveMdiChild 属性。获取当前活动的多文档界面 (MDI) 子窗口。

语法,public Form ActiveMdiChild { get; }

返回表示当前活动的 MDI 子窗口的 Form,或者如果当前没有子窗口,则返回 空引用。可使用此方法确定 MDI 应用程序中是否有任何打开的 MDI 子窗体。也可使用此方法从 MDI 子窗口的 MDI 父窗体或者从应用程序中显示的其他窗体对该 MDI 子窗口执行操作。

ContainerControl.ParentForm 属性。获取将容器控件分配给的窗体。

语法,public Form ParentForm { get; }

将容器控件分配给的 Form。

(3)使用公共属性(念时注:我比较常用这种方式)

使用公共属性也是一种比较常用的方式,通过窗体设计器添加的控件默认访问修饰符为private级别,可以设置成public或Internal(在程序集内部可见)来对外公开。比如对窗体中的Button进行公开,那就可以访问Button的相关属性,同时也可以注册事件或撤销事件注册。如:OptionForm form = new OptionForm();