public IEnumerable<object> Render(PanelItem panelItem) { var formatDisplay = DateFormat; var box = new SmartDateTextBox { ID = panelItem.GetId(), TextMode = TextBoxMode.SingleLine, Wrap = true, Enabled = panelItem.Editable, Width = new Unit(panelItem.Width, UnitType.Ex), FormatDisplay = formatDisplay, Visible = panelItem.Visible }; var calendar = new CalendarExtender { TargetControlID = box.UniqueID, Format = formatDisplay, EnabledOnClient = panelItem.Editable }; var description = new Label { Width = new Unit(panelItem.Width, UnitType.Ex), Text = string.Format("({0})", formatDisplay), Visible = panelItem.Visible }; if (panelItem.MaxLength > 0) box.MaxLength = panelItem.MaxLength; box .AddStyle(CssClass.Item) .AttachToolTip(panelItem) .ToggleStyle(panelItem.Editable, CssClass.Editable, CssClass.ReadOnly); description .AddStyle(CssClass.Item); panelItem.Target = box; return new List<Control> { box, PanelValidator.Create(panelItem), calendar, description }; }
private IEnumerable<Control> RenderLabel(PanelItem panelItem) { var controls = new List<Control>(); if (!panelItem.Label.IsNullOrEmpty()) { var label = new Label { ID = panelItem.GetLabelId(), Text = ResourceManager.GetString(panelItem.Label), Visible = panelItem.Visible }; label.AddStyle(CssClass.Label); controls.Add(label); panelItem.IDs.Add(label.ID); if (!panelItem.Optional) { var asterix = new Label { ID = panelItem.GetLabelId() + "Asterix", Text = @" *", CssClass = "Mandatory", Visible = panelItem.Visible }; controls.Add(asterix); panelItem.IDs.Add(asterix.ID); } } return controls; }
public IEnumerable<object> Render(PanelItem panelItem) { if (panelItem.Type == PanelItemType.EditableText) { var text = new TextBox { ID = panelItem.GetId(), Wrap = true, ReadOnly = !panelItem.Editable, Width = new Unit(panelItem.Width, UnitType.Ex), Visible = panelItem.Visible }; if (panelItem.MaxLength > 0) text.MaxLength = panelItem.MaxLength; text .AddStyle(CssClass.Item) .AttachToolTip(panelItem) .ToggleStyle(panelItem.Editable, CssClass.Editable, CssClass.ReadOnly); panelItem.Target = text; return new List<Control> { text, PanelValidator.Create(panelItem) }; } if (panelItem.Type == PanelItemType.Password) { var text = new TextBox { ID = panelItem.GetId(), Wrap = true, TextMode = TextBoxMode.Password, ReadOnly = !panelItem.Editable, Width = new Unit(panelItem.Width, UnitType.Ex), Visible = panelItem.Visible }; if (panelItem.MaxLength > 0) text.MaxLength = panelItem.MaxLength; text .AddStyle(CssClass.Item) .AttachToolTip(panelItem) .ToggleStyle(panelItem.Editable, CssClass.Editable, CssClass.ReadOnly); panelItem.Target = text; return new List<Control> { text, PanelValidator.Create(panelItem) }; } if (panelItem.Type == PanelItemType.MultiLineText) { var text = new TextBox { ID = panelItem.GetId(), TextMode = TextBoxMode.MultiLine, Wrap = true, ReadOnly = !panelItem.Editable, Width = new Unit(panelItem.Width, UnitType.Ex), Height = new Unit((panelItem.Height > 0) ? panelItem.Height : 20, UnitType.Ex), Visible = panelItem.Visible }; if (panelItem.MaxLength > 0) text.MaxLength = panelItem.MaxLength; text .AddStyle(CssClass.Item) .AttachToolTip(panelItem) .ToggleStyle(panelItem.Editable, CssClass.Editable, CssClass.ReadOnly); panelItem.Target = text; return new List<Control> { text, PanelValidator.Create(panelItem) }; } if (panelItem.Type == PanelItemType.NonEditableText) { var text = new TextBox { ID = panelItem.GetId(), Wrap = true, ReadOnly = !panelItem.Editable, Width = new Unit(panelItem.Width, UnitType.Ex), Visible = panelItem.Visible }; if (panelItem.MaxLength > 0) text.MaxLength = panelItem.MaxLength; text .AddStyle(CssClass.Item) .AttachToolTip(panelItem) .ToggleStyle(panelItem.Editable, CssClass.Editable, CssClass.ReadOnly); panelItem.Target = text; return new List<Control> { text, PanelValidator.Create(panelItem) }; } if (panelItem.Type == PanelItemType.Label) { var text = new Label { ID = panelItem.GetId(), Enabled = panelItem.Editable, Width = new Unit(panelItem.Width, UnitType.Ex), Text = (!panelItem.Text.IsNullOrEmpty() ? panelItem.Text : string.Empty), Visible = panelItem.Visible }; text .AddStyle(CssClass.Item) .AttachToolTip(panelItem) .ToggleStyle(panelItem.Editable, CssClass.Editable, CssClass.ReadOnly); panelItem.Target = text; return new List<Control> { text, PanelValidator.Create(panelItem) }; } return null; }