示例#1
0
        void gvMapping_CurrentCellChanged(object sender, EventArgs e)
        {
            if (gvMapping.CurrentCell == null)
            {
                return;
            }
            string colName = gvMapping.Columns[gvMapping.CurrentCell.ColumnIndex].Name;

            if (colName == "ColSource")
            {
                _relationCell.SetDataSource(_config.AllPropertyNames);
                _relationCell.ShowComboBox(gvMapping.CurrentCell);
            }
            else if (colName == "ColTarget")
            {
                EntityRelationItem erf = gvMapping.Rows[gvMapping.CurrentCell.RowIndex].DataBoundItem as EntityRelationItem;
                if (erf != null)
                {
                    _relationCell.SetDataSource(erf.TargetPropertyList);
                    _relationCell.ShowComboBox(gvMapping.CurrentCell);
                }
            }
        }
示例#2
0
        /// <summary>
        /// 初始化属性
        /// </summary>
        private void InitPropertys()
        {
            _lstProperty = new List <UIModelItem>();


            List <ClrProperty>   lstClrProperty = EntityConfig.GetAllMember <ClrProperty>(_classType, true);
            EntityConfig         entity         = new EntityConfig(_classType, DesignerInfo);
            Stack <EntityConfig> stkEntity      = EntityConfig.GetEntity(entity, DesignerInfo);

            foreach (ClrProperty property in lstClrProperty)
            {
                UIModelItem item = new UIModelItem(property);


                EntityParamField finfo = EntityConfig.FindParamInfoByName(stkEntity, item.PropertyName);
                if (finfo != null)
                {
                    bool      isPK  = EnumUnit.ContainerValue((int)finfo.EntityPropertyType, (int)EntityPropertyType.PrimaryKey);
                    TableInfo tinfo = new TableInfo(isPK, finfo.ParamName, finfo.Length, finfo.ReadOnly, (DbType)EnumUnit.GetEnumInfoByName(typeof(DbType), finfo.DbType).Value);
                    item.TabInfo = tinfo;
                }
                else
                {
                    EntityRelationItem rel = EntityConfig.FindRelInfoByName(stkEntity, item.PropertyName);
                    if (rel != null)
                    {
                        RelationInfo rinfo = new RelationInfo(rel.TargetProperty, rel.SourceProperty, rel.IsParent, rel.TypeName, rel.TypeFullName);
                        item.RelInfo = rinfo;
                    }
                }



                _lstProperty.Add(item);
            }
        }