private string GetDefaultValue(TemplateVariableInfo variable) { string defaultValue = null; if (this.VariableBus != null) defaultValue = this.VariableBus.PullVariableValue(variable.Name); if (string.IsNullOrEmpty(defaultValue)) defaultValue = variable.DefaultValue; return defaultValue; }
private void ReadVariables(DataSet ds) { this.Variables = new Dictionary<string, TemplateVariableInfo>(); if (ds.Tables.Contains("Variable")) { foreach (DataRow rowVariable in ds.Tables["Variable"].Rows) { var allowedValues = ReadListItemsForVariable(ds, rowVariable); TemplateVariableInfo var = new TemplateVariableInfo(GetRowField(rowVariable, "Name"), GetRowField(rowVariable, "DefaultValue"), GetRowField(rowVariable, "Description"), allowedValues); this.Variables[var.Name] = var; } } }
private ComboBox CreateComboBoxForVariable(TemplateVariableInfo var) { ComboBox ddl = new ComboBox(); ddl.ValueMember = "Value"; ddl.DisplayMember = "Name"; this.uiToolTip.SetToolTip(ddl, var.Description); ddl.SelectedIndexChanged += new EventHandler(OnDdlVariableChanged); ddl.DataSource = var.AllowedValues; return ddl; }
private TextBox CreateTextBoxForVariable(TemplateVariableInfo var) { TextBox txt = new TextBox(); txt.Anchor = AnchorStyles.Right | AnchorStyles.Left | AnchorStyles.Top; this.uiToolTip.SetToolTip(txt, var.Description); txt.Leave += new EventHandler(OnTextVariableChanged); return txt; }
private Label CreateLabelForVariable(TemplateVariableInfo var, int labelWidth) { Label lbl = new Label(); lbl.Width = labelWidth; lbl.Text = var.Description ?? var.Name; lbl.AutoEllipsis = true; this.uiToolTip.SetToolTip(lbl, var.Description); return lbl; }
private Control CreateBoundControl(TemplateVariableInfo var, Label lbl) { Control ctl; if (var.AllowedValues != null && var.AllowedValues.Length > 0) ctl = CreateComboBoxForVariable(var); else ctl = CreateTextBoxForVariable(var); ctl.Location = new Point(lbl.Width + ControlGap, nextRowLocation); ctl.Width = this.Width - ctl.Location.X - 2 * ControlGap; return ctl; }
private Control CreateVariableControls(TemplateVariableInfo var, int labelWidth) { Label lbl = CreateLabelForVariable(var, labelWidth); lbl.Location = new Point(0, nextRowLocation); this.Controls.Add(lbl); Control ctl = CreateBoundControl(var, lbl); this.Controls.Add(ctl); SetControlValue(ctl, GetDefaultValue(var)); this.nextRowLocation += lbl.Size.Height + RowGap; return ctl; }