/// <summary>
/// Builds the form control.
/// </summary>
/// <param name="parentControl">The parent control.</param>
/// <param name="setValues">if set to <c>true</c> [set values].</param>
/// <param name="form">The form.</param>
/// <param name="activeFormGuid">The active form unique identifier.</param>
/// <param name="showInvalid">if set to <c>true</c> [show invalid].</param>
private void BuildFormControl( Control parentControl, bool setValues, RegistrationTemplateForm form,
Guid? activeFormGuid = null, bool showInvalid = false )
{
var control = new RegistrationTemplateFormEditor();
control.ID = form.Guid.ToString( "N" );
parentControl.Controls.Add( control );
control.ValidationGroup = btnSave.ValidationGroup;
control.DeleteFieldClick += tfeForm_DeleteFieldClick;
control.ReorderFieldClick += tfeForm_ReorderFieldClick;
control.EditFieldClick += tfeForm_EditFieldClick;
control.RebindFieldClick += tfeForm_RebindFieldClick;
control.DeleteFormClick += tfeForm_DeleteFormClick;
control.AddFieldClick += tfeForm_AddFieldClick;
control.SetForm( form );
control.BindFieldsGrid( FormFieldsState[form.Guid] );
if ( setValues )
{
control.Expanded = ExpandedForms.Contains( form.Guid );
if ( !control.Expanded && showInvalid && !form.IsValid)
{
control.Expanded = true;
}
if ( !control.Expanded )
{
control.Expanded = activeFormGuid.HasValue && activeFormGuid.Equals( form.Guid );
}
}
}