I made a couple of changes to my copy of DynamicForm I thought I'd let you know about.
1. I'm using DynamicForm in one case to not render a form but to render different pages of a pageframe. As a result, DynamicFormRenderEngine.Render is called more than once. I had to clear the oFieldList collection to prevent the set of controls from the previous call to be included in this one. I added this just before the call to PreProcessBodyMarkup:
*** DH 2016-10-19: clear oFieldList in case Render is called more than once
This.oFieldList.Remove(-1)
2. I have a checkbox with a long caption I don't want word wrapped. I think WordWrap should only be set to .T. if AutoSize is .F., so I changed StyleCheckbox as follows:
*** DH 2016-10-19: don't set WordWrap if AutoSize is .T.
if not .AutoSize
.WordWrap = .t.
endif not .AutoSize
Doug
Comments: ** Comment from web user: DougHennig **
Sorry, the formatting got messed up. This is better:
```
Case lcBaseclass = 'editbox'
*** DH 2016-10-24: use standard prefix
* lcPrefix = 'edit'
lcPrefix = 'edt'
Case lcBaseclass = 'commandbutton'
lcPrefix = 'cmd'
Case lcBaseclass = 'optiongroup'
*** DH 2016-10-24: use standard prefix
* lcPrefix = 'opt'
lcPrefix = 'opg'
Case lcBaseclass = 'checkbox'
lcPrefix = 'chk'
Case lcBaseclass = 'combobox'
lcPrefix = 'cbo'
Case lcBaseclass = 'listbox'
*** DH 2016-10-24: use standard prefix
* lcPrefix = 'list'
lcPrefix = 'lst'
Case lcBaseclass = 'spinner'
*** DH 2016-10-24: use standard prefix
* lcPrefix = 'spinner'
lcPrefix = 'spn'
Case lcBaseclass = 'grid'
*** DH 2016-10-24: use standard prefix
* lcPrefix = 'grid'
lcPrefix = 'grd'
Case lcBaseclass = 'image'
lcPrefix = 'img'
Case lcBaseclass = 'timer'
*** DH 2016-10-24: use standard prefix
* lcPrefix = 'timer'
lcPrefix = 'tmr'
Case lcBaseclass = 'pageframe'
*** DH 2016-10-24: use standard prefix
* lcPrefix = 'pageframe'
lcPrefix = 'pgf'
Case lcBaseclass = 'line'
*** DH 2016-10-24: use standard prefix
* lcPrefix = 'line'
lcPrefix = 'lin'
Case lcBaseclass = 'shape'
*** DH 2016-10-24: use standard prefix
* lcPrefix = 'shape'
lcPrefix = 'shp'
```