# XTROP\_CREATE
> [HTML Version](xtrop_create.htm)
In this, the "normal" usage mode, a single XCALL XTREE causes the control object to be created and loaded with data. Unless the XTF\_NOSEL flag is specified, the control will then receive the focus and wait for the user to perform an action that causes it to exit. On exit, unless the [TXF\_MODELESS](xtree-flags1b.htm.md#xtf_modeless) flag is set, the control is deleted. If both XTF\_NOSEL and XTF\_MODELESS flags are set, the operation is essentially _display_—i.e. create the tree if necessary, configure it, load the specified data, display it, and return.
You may specify the XTREE control number (0-31) in [XTR.CTLNO](xtr_ctlno.htm.md) or or set it to -1, in which case the next available XTREE control control number will be used (and returned in XTR.CTLNO). If an XTREE control already exists with the specified number, the opcode will effectively be converted to [XTROP\_REPLACE](xtrop_replace.htm.md), except that certain optimizations will be adjusted to work better for the case of a complete replacement of the tree contents—whereas XTROP\_REPLACE is normally optimized for the case where only some of the data elements are changing.