Form.ActiveMdiChild プロパティ
現在アクティブなマルチ ドキュメント インターフェイス (MDI) 子ウィンドウを取得します。
Public ReadOnly Property ActiveMdiChild As Form
[C#]
public Form ActiveMdiChild {get;}
[C++]
public: __property Form* get_ActiveMdiChild();
[JScript]
public function get ActiveMdiChild() : Form;
プロパティ値
現在アクティブな MDI 子ウィンドウを表す Form を返します。子ウィンドウが現在存在しない場合は null 参照 (Visual Basic では Nothing) を返します。
解説
このメソッドを使用して、MDI アプリケーションで、開いている MDI 子フォームがあるかどうかを確認できます。また、このメソッドを使用すると、MDI 親フォームまたはアプリケーションに表示されている別のフォームから、MDI 子ウィンドウに対して操作を実行することもできます。
現在アクティブなフォームが MDI 子フォームでない場合は、 ActiveForm プロパティを使用して、現在アクティブなフォームへの参照を取得できます。
使用例
[Visual Basic, C#, C++] アクティブな MDI 子フォームへの参照を取得して、フォーム上のすべての TextBox コントロールをループ処理し、それぞれの Text プロパティをリセットする例を次に示します。この例では、MDI 親フォームが作成済みであること、およびこのメソッドがその MDI 親フォームから呼び出されていることを前提にしています。
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 'ClearAllChildFormText
[C#]
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 = "";
}
}
}
[C++]
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->Item[i]))
{
// Clear the contents of the control since it is a TextBox.
tempChild->Controls->Item[i]->Text = S"";
}
}
}
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ
参照
Form クラス | Form メンバ | System.Windows.Forms 名前空間 | ActiveForm