Form.ActiveMdiChild Form.ActiveMdiChild Form.ActiveMdiChild Form.ActiveMdiChild Property

定义

获取当前活动的多文档界面 (MDI) 子窗口。Gets the currently active multiple-document interface (MDI) child window.

public:
 property System::Windows::Forms::Form ^ ActiveMdiChild { System::Windows::Forms::Form ^ get(); };
[System.ComponentModel.Browsable(false)]
public System.Windows.Forms.Form ActiveMdiChild { get; }
member this.ActiveMdiChild : System.Windows.Forms.Form
Public ReadOnly Property ActiveMdiChild As Form

属性值

返回表示当前活动的 MDI 子窗口的 Form,或者如果当前没有子窗口,则返回 nullReturns a Form that represents the currently active MDI child window, or null if there are currently no child windows present.

示例

下面的示例获取对活动 MDI 子窗体的引用,并遍历窗TextBox体上的所有控件,并重Text置其属性。The following example obtains a reference to the active MDI child form and loops through all TextBox controls on the form, resetting their Text properties. 此示例要求已创建了一个 MDI 父窗体并且此方法调用是从 MDI 父窗体中进行的。This example requires that an MDI parent form has been created and that this method call is being made from the MDI parent form.

public:
   void ClearAllChildFormText()
   {
      
      // Obtain a reference to the currently active MDI child form.
      Form^ tempChild = this->ActiveMdiChild;
      
      // Loop through all controls on the child form.
      for ( int i = 0; i < tempChild->Controls->Count; i++ )
      {
         
         // Determine if the current control on the child form is a TextBox.
         if ( dynamic_cast<TextBox^>(tempChild->Controls[ i ]) )
         {
            
            // Clear the contents of the control since it is a TextBox.
            tempChild->Controls[ i ]->Text = "";
         }

      }
   }

public void ClearAllChildFormText()
 {
    // Obtain a reference to the currently active MDI child form.
    Form tempChild = this.ActiveMdiChild;
    
    // Loop through all controls on the child form.
    for (int i = 0; i < tempChild.Controls.Count; i++)
    {
       // Determine if the current control on the child form is a TextBox.
       if (tempChild.Controls[i] is TextBox)
       {
          // Clear the contents of the control since it is a TextBox.
          tempChild.Controls[i].Text = "";
       }
    }
 }
    
Public Sub ClearAllChildFormText()
    ' Obtain a reference to the currently active MDI child form.
    Dim tempChild As Form = Me.ActiveMdiChild
    
    ' Loop through all controls on the child form.
    Dim i As Integer
    For i = 0 To tempChild.Controls.Count - 1
        ' Determine if the current control on the child form is a TextBox.
        If TypeOf tempChild.Controls(i) Is TextBox Then
            ' Clear the contents of the control since it is a TextBox.
            tempChild.Controls(i).Text = ""
        End If
    Next i
End Sub

注解

您可以使用此方法来确定您的 MDI 应用程序中是否打开了任何 MDI 子窗体。You can use this method to determine whether there are any MDI child forms open in your MDI application. 你还可以使用此方法从 mdi 父窗口或应用程序中显示的另一窗体中对 MDI 子窗口执行操作。You can also use this method to perform operations on an MDI child window from its MDI parent form or from another form that is displayed in your application.

如果当前处于活动状态的窗体不是 MDI 子窗体,则ActiveForm可以使用属性来获取对它的引用。If the currently active form is not an MDI child form, you can use the ActiveForm property to obtain a reference to it.

适用于

另请参阅