Here an example
import clr
clr.AddReference('ProtoGeometry')
from Autodesk.DesignScript.Geometry import *
clr.AddReference('System.Drawing')
clr.AddReference('System.Windows.Forms')
import System.Drawing
import System.Windows.Forms
from System.Drawing import *
from System.Windows.Forms import *
class MainForm(Form):
def __init__(self):
self.InitializeComponent()
def InitializeComponent(self):
self._button1 = System.Windows.Forms.Button()
self.SuspendLayout()
#
# button1
#
self._button1.Location = System.Drawing.Point(97, 109)
self._button1.Name = "button1"
self._button1.Size = System.Drawing.Size(94, 37)
self._button1.TabIndex = 0
self._button1.Text = "button1"
self._button1.UseVisualStyleBackColor = True
self._button1.Click += self.Button1Click
#
# Form13
#
self.ClientSize = System.Drawing.Size(284, 261)
self.Controls.Add(self._button1)
self.Name = "MainForm"
self.Text = "MainForm"
self.ResumeLayout(False)
def Button1Click(self, sender, e):
try:
newMDIChild = ChildForm(self)
newMDIChild.StartPosition = FormStartPosition.CenterParent
newMDIChild.ShowDialog(self)
except Exception as ex:
print(ex)
class ChildForm(Form):
def __init__(self, parent):
self._parent = parent
self.InitializeComponent()
def InitializeComponent(self):
self._label1 = System.Windows.Forms.Label()
self.SuspendLayout()
#
# label1
#
self._label1.Location = System.Drawing.Point(47, 41)
self._label1.Name = "label1"
self._label1.Size = System.Drawing.Size(178, 37)
self._label1.TabIndex = 0
self._label1.Text = "I'm a child\nMy parent is '{}'".format(self._parent.Name)
self._label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter
#
# Form14
#
self.ClientSize = System.Drawing.Size(284, 128)
self.Controls.Add(self._label1)
self.Name = "ChildForm"
self.Text = "ChildForm"
self.ResumeLayout(False)
MainForm().ShowDialog()