@using GreenTree.Nachtragsmanagement.Web.Extensions @model GreenTree.Nachtragsmanagement.Web.Models.Config.ConfigItemDataModel
@if (Model.IsValueCollection) { Html.DevExpress().DropDownEdit(t => { t.Name = "devDropDownListConfigItemValues"; t.Width = new Unit(100, UnitType.Percentage); t.SetDropDownWindowTemplateContent(l => { Html.DevExpress().ListBox(lb => { lb.Name = "Values"; lb.Width = new Unit(100, UnitType.Percentage); lb.Properties.TextField = "Text"; lb.Properties.ValueField = "Value"; lb.Properties.SelectionMode = ListEditSelectionMode.CheckColumn; lb.ControlStyle.Border.BorderStyle = BorderStyle.None; lb.PreRender = (sender, e) => { var listBox = sender as MVCxListBox; foreach (ListEditItem listItem in listBox.Items) { if (Model.Values == null || !Model.Values.Any(m => m == (string)listItem.Value)) continue; listItem.Selected = true; } }; lb.Properties.ClientSideEvents.SelectedIndexChanged = "function (s, e) { onListBoxSelectionChanged(s, e); }"; }).BindList(ViewData["ConfigReferenceValues"]).Render(); }); t.Properties.ClientSideEvents.Init = "function (s, e) { s.SetText(getSelectedItemsText(Values.GetSelectedItems())); }"; }).Bind(ViewData["ConfigReferenceText"]).Render(); } else { Html.DevExpress().ComboBoxFor(m => m.Value, t => { t.Width = new Unit(100, UnitType.Percentage); t.Properties.TextField = "Text"; t.Properties.ValueField = "Value"; }).BindList(ViewData["ConfigReferenceValues"]).GetHtml(); }