在所有打开的MDIChild窗体中运行一个子窗口
问题描述:
我有一个MDI窗口应用程序。 用户有能力修改控制属性(例如颜色)。每个MDI子表单都包含一个名为ApplyMyUserProfile的子集,用于设置颜色。在所有打开的MDIChild窗体中运行一个子窗口
我想试图找到一种方法来立即在 每个(打开)MDI子窗口上运行ApplyMyUserProfile。我可以识别打开的子窗体,但我不知道如何告诉每个窗体为每个窗体运行ApplyMyUserProfile()。
这就是我想要做::
私人小组ModifyUserProfileParametersInOpenForms()
昏暗的窗体名称的String = “”
'遍历所有打开的' MDI子窗体
For Each frm As Form In Application.OpenForms
If frm.IsMdiChild Then
窗体名称= frm.Name
Debug.Print(窗体名称) '这个正确显示我打开MDI子窗体
' 每个MDI子窗体有一个名为ApplyMyUserProfile() '此子将修改子了涉及每个 “形式
frm.ApplyMyUserProfile()
”这产生了错误的控制属性(颜色等)“ApplyMyUserProfile不是 '系统的成员。 Windows.Forms.form
frm.Refresh()
结束如果
下一页FRM
末次
“感谢您的帮助!
答
For Each frm As Form In Application.OpenForms
“遍历所有打开的MDI子窗体
If frm.IsMdiChild Then
If frm.Name <> "frmMyUserProfile" Then
CallByName(frm, "Form_ReloadUserProfileParameters", CallType.Method)
End If
End If
Next frm
”注意 “Form_ReloadUserProfileParameters()是一个公共子必须在每个子窗体。无论在这个子文件中,都会在子文件上执行! (小孩) '完美!
请参考[参考](https://stackoverflow.com/help)了解如何提出一个好问题 – UmarZaii