diff --git a/src/Orchard.Web/Modules/Orchard.DynamicForms/Bindings/EnumerationFieldBindings.cs b/src/Orchard.Web/Modules/Orchard.DynamicForms/Bindings/EnumerationFieldBindings.cs index 1c9955bc7..0798a5db3 100644 --- a/src/Orchard.Web/Modules/Orchard.DynamicForms/Bindings/EnumerationFieldBindings.cs +++ b/src/Orchard.Web/Modules/Orchard.DynamicForms/Bindings/EnumerationFieldBindings.cs @@ -8,8 +8,19 @@ namespace Orchard.DynamicForms.Bindings { public void Describe(BindingDescribeContext context) { context.For() .Binding("SelectedValues", (contentItem, field, s) => { - var items = (s ?? "").Split(new[] {',', ';'}, StringSplitOptions.RemoveEmptyEntries); - field.SelectedValues = items; + if (String.IsNullOrWhiteSpace(s)) { + field.Value = ""; + return; + } + + var separators = new[] {',', ';'}; + var hasMultipleValues = s.IndexOfAny(separators) >= 0; + + if (hasMultipleValues) + field.SelectedValues = s.Split(separators, StringSplitOptions.RemoveEmptyEntries); + else { + field.Value = s; + } }); } }