예제 #1
0
        protected FormElementUserInput[] GetControlUserInput(ControlCollection ctrlCol)
        {
            List <FormElementUserInput> answers = new List <FormElementUserInput>();

            if (ctrlCol != null)
            {
                for (int i = 0; i < ctrlCol.Count; i++)
                {
                    Control ctrl = ctrlCol[i];

                    answers.AddRange(this.GetControlUserInput(ctrl.Controls));

                    FormElementControl eCtrl = (ctrl as FormElementControl);
                    if (eCtrl != null)
                    {
                        answers.Add(eCtrl.UserInput);
                    }
                }
            }

            return(answers.ToArray());
        }
예제 #2
0
        protected override void CreateChildControls()
        {
            //FormElementData[] data = this._provider.GetFormElements(this._frmProviderKey);
            FormElementData[] data = this._provider.GetFormElements(this.FormProviderKey);

            if (data != null)
            {
                // This is just the top-level container.  The provider is responsible for all the data, and the
                //   controls are responsible for processing that data and generating their children.
                for (int i = 0; i < data.Length; i++)
                {
                    FormElementControl ctrl = FormElementControl.GetControl(data[i]);
                    this.Controls.Add(ctrl);
                    ctrl.AnswerChanged     += new DynamicFormElementEventHandler(this.formElementCtrl_onAnswerChanged);
                    ctrl.ElementRendering  += new DynamicFormElementRenderingEventHandler(this.formElementCtrl_onRendering);
                    ctrl.ElementRendered   += new DynamicFormElementEventHandler(this.formElementCtrl_onRendered);
                    ctrl.VisibilityChanged += new DynamicFormElementEventHandler(this.formElementCtrl_onVisibilityChanged);
                    ctrl.Owner              = this;
                }
            }

            base.CreateChildControls();
        }
예제 #3
0
 protected void SetAsControlParent(FormElementControl ctrl)
 {
     ctrl.Owner = this;
 }