示例#1
0
        public override ASPxEditBase CreateEdit(CreateEditControlArgs args, bool isInternal)
        {
            var aspxListBox = (ASPxSmartListBox)base.CreateEdit(args, isInternal);

            aspxListBox.SetValues(FetchEditValues(args));

            return(aspxListBox);
        }
示例#2
0
        protected IEnumerable <object> FetchEditValues(CreateEditControlArgs args)
        {
            if (args.EditValue == null)
            {
                return(null);
            }

            if (args.DataType.IsEnumeration())
            {
                if (args.EditValue.IsNotInstanceOf <IEnumerable>())
                {
                    return(new[] { args.EditValue });
                }

                if (args.EditValue.IsInstanceOf(ValueType))
                {
                    return(new[] { args.EditValue });
                }

                return(((IEnumerable)args.EditValue).Cast <object>().ToArray());
            }

            return(new[] { args.EditValue });
        }
        public override ASPxEditBase CreateEdit(CreateEditControlArgs args, bool isInternal)
        {
            var aspxListBox = (ASPxSmartListBox)base.CreateEdit(args, isInternal);
                aspxListBox.SetValues(FetchEditValues(args));

            return aspxListBox;
        }
        protected IEnumerable<object> FetchEditValues(CreateEditControlArgs args)
        {
            if (args.EditValue == null) return null;

            if (args.DataType.IsEnumeration())
            {
                if (args.EditValue.IsNotInstanceOf<IEnumerable>())
                {
                    return new[] { args.EditValue };
                }

                if (args.EditValue.IsInstanceOf(ValueType))
                {
                    return new[] { args.EditValue };
                }

                return ((IEnumerable) args.EditValue).Cast<object>().ToArray();
            }

            return new[] { args.EditValue };
        }