Form::OwnedForms Property


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Gets an array of Form objects that represent all forms that are owned by this form.

Namespace:   System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

property array<Form^>^ OwnedForms {
	array<Form^>^ get();

Property Value

Type: array<System.Windows.Forms::Form^>^

A Form array that represents the owned forms for this form.

This property returns an array that contains all forms that are owned by this form. To make a form owned by another form, call the AddOwnedForm method. The form assigned to the owner form will remain owned until the RemoveOwnedForm method is called. You can also make a form owned by another by setting the Owner property with a reference to its owner form.

When a form is owned by another form, it is closed or hidden with the owner form. For example, consider a form named Form2 that is owned by a form named Form1. If Form1 is closed or minimized, Form2 is also closed or hidden. Owned forms are also never displayed behind their owner form. You can use owned forms for windows such as find and replace windows, which should not be displayed behind the owner form when the owner form is selected.


If the form is a multiple-document interface (MDI) parent form, this property will return all forms that are displayed with the exception of any MDI child forms that are currently open. To obtain the MDI child forms opened in an MDI parent form, use the MdiChildren property.

The following code example demonstrates how to use the OwnedForms property to modify all forms owned by the owner form. The first method in the example adds forms to the array of owned forms associated with the owned form. The second method loops through all owned forms and changes the caption. This example requires that both methods are called by an event or other method of a form.

   void AddMyOwnedForm()
      // Create form to be owned.
      Form^ ownedForm = gcnew Form;

      // Set the text of the owned form.
      ownedForm->Text = String::Format( "Owned Form {0}", this->OwnedForms->Length );

      // Add the form to the array of owned forms.
      this->AddOwnedForm( ownedForm );

      // Show the owned form.

   void ChangeOwnedFormText()
      // Loop through all owned forms and change their text.
      for ( int x = 0; x < this->OwnedForms->Length; x++ )
         this->OwnedForms[ x ]->Text = String::Format( "My Owned Form {0}", x );

.NET Framework
Available since 1.1
Return to top