Ejemplo n.º 1
0
        public BizComboBox CreateComboBox(Combo_Box combo, DocDef def)
        {
            var result = new BizComboBox();

            AddChildren(result, combo, def);
            InitComboBox(result, combo, def);

            return(result);
        }
Ejemplo n.º 2
0
        private void InitComboBox(BizComboBox control, Combo_Box controlData, DocDef def)
        {
            AttrDef attrDef = null;

            if (def != null)
            {
                if (controlData.Attribute_Id != null)
                {
                    attrDef = def.Attributes.FirstOrDefault(a => a.Id == controlData.Attribute_Id);
                }
                if (attrDef == null && controlData.Attribute_Name != null)
                {
                    attrDef =
                        def.Attributes.FirstOrDefault(a => String.Equals(a.Name, controlData.Attribute_Name, StringComparison.OrdinalIgnoreCase));
                }
            }
            control.Rows    = controlData.Rows ?? 0;
            control.IsRadio = controlData.Is_Radio ?? false;
            if (attrDef != null)
            {
                control.AttributeDefId = attrDef.Id;
                control.AttributeName  = attrDef.Name;
            }
            else
            {
                var         attrName = controlData.Attribute_Name ?? String.Empty;
                SystemIdent attrIdent;
                if (SystemIdentConverter.TryConvert(attrName, out attrIdent))
                {
                    control.Ident         = attrIdent;
                    control.AttributeName = attrName;
                    //InitComboBox(control, attrIdent);
                }
            }
            control.DetailAttributeId   = controlData.Detail_Attribute_Id;
            control.DetailAttributeName = controlData.Detail_Attribute_Name;

            /*if (attrDef != null)
             * {
             *  //if (!controlData.Attribute_DefsReference.IsLoaded) controlData.Attribute_DefsReference.Load();
             *
             *  InitComboBox(control, attrDef /*controlData.Attribute_Defs#1#);
             * } */

            InitControl(control, controlData);
            // AddQueryItems(control, controlData); // Вызывает ошибку дублирования QueryItems
        }