Exemple #1
0
        public UltraGrid GenerateGrid(string moduleName, Control ctr, Point p)
        {
            Sys_PD_Module module = new Sys_PD_Module();

            module = instModule.GetListByWhere(" and SPM_Module='" + moduleName + "'").ToList()[0];
            //List<Sys_PD_Filed> filedList = new List<Sys_PD_Filed>();
            //filedList = instField.GetListByWhere(" and DCP_ModuleName='" + moduleName + "' order by DCP_Order").ToList();
            GridTagObject gridObj = new GridTagObject();
            gridObj.Module = module;
            gridObj.GridValuePrefix = "";

            UltraGrid ug_list = new Infragistics.Win.UltraWinGrid.UltraGrid();
            ctr.Tag = module;
            ug_list.Location = p;
            ug_list.Name = module.SPM_LPrefix + module.SPM_Module;//grid的技术名称
            ug_list.Tag = gridObj;
            ug_list.Size = new System.Drawing.Size(module.SPM_LX, module.SPM_LY);
            ug_list.Dock = DockStyle.Fill;
            ug_list.Text = module.SPM_Name;

            #region 默认样式初始化
            GridFormater.SetGridStyle(ug_list);
            #endregion

            ug_list.AfterColPosChanged += new AfterColPosChangedEventHandler(ug_list_AfterColPosChanged);
            ug_list.InitializeLayout += new InitializeLayoutEventHandler(ug_list_InitializeLayout);
            ug_list.KeyUp += new KeyEventHandler(ug_list_KeyUp);
            ug_list.CellChange += new CellEventHandler(ug_list_CellChange);
            ug_list.BeforeCellListDropDown += new CancelableCellEventHandler(ug_list_BeforeCellListDropDown);
            ctr.Controls.Add(ug_list);
            return ug_list;
        }
Exemple #2
0
 private void ug_list_AfterColPosChanged(object sender, Infragistics.Win.UltraWinGrid.AfterColPosChangedEventArgs e)
 {
     UltraGrid ug_list = sender as UltraGrid;
     Sys_PD_Module module = new Sys_PD_Module();
     //module = ug_list.Tag as Sys_PD_Module;
     GridTagObject gridObj = ug_list.Tag as GridTagObject;
     module = gridObj.Module;
     GridFormater.SaveGridFormat(ug_list.DisplayLayout.Bands[0], module.SPM_Module, SessionConfig.UserID);
 }
Exemple #3
0
        void ug_list_InitializeLayout(object sender, InitializeLayoutEventArgs e)
        {
            UltraGrid ug_list = sender as UltraGrid;
            Sys_PD_RefModule refModuleData = new Sys_PD_RefModule();
            int i = 0;
            //ug_list.DisplayLayout.Appearance.FontData.SizeInPoints = (float)30;
            //ug_list.ResetDisplayLayout();
            //绑定每一列,并修改表头
            Sys_PD_Module module = new Sys_PD_Module();
            GridTagObject gridObj = ug_list.Tag as GridTagObject;
            module = gridObj.Module;
            //module = ug_list.Tag as Sys_PD_Module;
            List<Sys_PD_Filed> filedList = new List<Sys_PD_Filed>();
            filedList = instField.GetListByWhere(" and DCP_ModuleName='" + module.SPM_Module + "' order by DCP_Order ASC").ToList();

            //			 e.Layout.Bands[0].Columns["price"].MaskInput= "$#,###.##";

            Infragistics.Win.UltraWinGrid.UltraGridColumn ugCol;
            for (i = 0; i < e.Layout.Bands[0].Columns.Count; i++)//使所有的都不能编辑
            {
                ugCol = e.Layout.Bands[0].Columns[i];
                //使其不能在Grid上编辑
                ugCol.CellActivation = Activation.NoEdit;
                ugCol.Hidden = true;
                //ugCol.Header.te

            }
            ug_list.DisplayLayout.Bands[0].Summaries.Clear();

            foreach (Sys_PD_Filed field in filedList)
            {
                UltraGridBand band = e.Layout.Bands[0];
                if (band.Columns.Exists(field.DCP_ControlID))
                {
                    band.Columns[field.DCP_ControlID].Header.Caption = field.DCP_Label;
                    band.Columns[field.DCP_ControlID].Hidden = field.DCP_IsHidden == 1 ? true : false;
                    band.Columns[field.DCP_ControlID].Tag = field;//置tag属性,保存列的配置属性
                    band.Columns[field.DCP_ControlID].Header.VisiblePosition = field.DCP_Order;
                    band.Columns[field.DCP_ControlID].CellActivation = Activation.AllowEdit;

                }
                else
                {
                    continue;
                }

                if (field.DCP_IsSummary > 0)
                {
                    ug_list.DisplayLayout.Bands[0].Columns[field.DCP_ControlID].AllowRowSummaries = AllowRowSummaries.SingleSummaryBasedOnDataType;

                    ug_list.DisplayLayout.Bands[0].Summaries.Add(SummaryType.Sum, ug_list.DisplayLayout.Bands[0].Columns[field.DCP_ControlID]);
                    ug_list.DisplayLayout.Bands[0].SummaryFooterCaption = "合计";
                }

                //绑定编辑的控件
                switch (field.DCP_ControlType)
                {
                    case "text":
                        if (field.DCP_IsReadonly == 1)
                        {
                            band.Columns[field.DCP_ControlID].CellClickAction = CellClickAction.RowSelect;
                        }
                        break;
                    case "dec":
                        band.Columns[field.DCP_ControlID].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.Double;
                        band.Columns[field.DCP_ControlID].PromptChar = ' ';
                        band.Columns[field.DCP_ControlID].MaskDisplayMode = Infragistics.Win.UltraWinMaskedEdit.MaskMode.Raw;
                        band.Columns[field.DCP_ControlID].MaskDataMode = Infragistics.Win.UltraWinMaskedEdit.MaskMode.Raw;
                        if (field.DCP_IsReadonly == 1)
                        {
                            band.Columns[field.DCP_ControlID].CellClickAction = CellClickAction.RowSelect;
                        }

                        break;
                    case "int":
                        band.Columns[field.DCP_ControlID].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.Integer;

                        if (field.DCP_IsReadonly == 1)
                        {
                            band.Columns[field.DCP_ControlID].CellClickAction = CellClickAction.RowSelect;
                        }
                        break;
                    case "check":
                        band.Columns[field.DCP_ControlID].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.CheckBox;

                        if (field.DCP_IsReadonly == 1)
                        {
                            band.Columns[field.DCP_ControlID].CellClickAction = CellClickAction.RowSelect;
                        }
                        break;
                    case "date":
                        band.Columns[field.DCP_ControlID].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.Date;
                        band.Columns[field.DCP_ControlID].MaskInput = "yyyy-mm-dd";
                        //band.Columns[field.DCP_ControlID].DefaultCellValue = DateTime.Now;

                        if (field.DCP_IsReadonly == 1)
                        {
                            band.Columns[field.DCP_ControlID].CellClickAction = CellClickAction.RowSelect;
                        }
                        break;
                    case "time":
                        band.Columns[field.DCP_ControlID].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.DateTimeWithoutDropDown;
                        band.Columns[field.DCP_ControlID].MaskInput = "yyyy-mm-dd hh:mm";
                        //band.Columns[field.DCP_ControlID].DefaultCellValue = DateTime.Now;

                        if (field.DCP_IsReadonly == 1)
                        {
                            band.Columns[field.DCP_ControlID].CellClickAction = CellClickAction.RowSelect;
                        }
                        break;
                    case "dict":
                        var dict = instDict.GetListByWhere(string.Format(" and dict_key='{0}' and dict_code <>'{0}' order by dict_order ", field.DCP_Type));
                        var valueList = new ValueList();
                        foreach (var obj in dict)
                        {
                            valueList.ValueListItems.Add(obj.Dict_Code, obj.Dict_Name);
                        }
                        band.Columns[field.DCP_ControlID].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList;
                        band.Columns[field.DCP_ControlID].ValueList = valueList;
                        band.Columns[field.DCP_ControlID].ButtonDisplayStyle = Infragistics.Win.UltraWinGrid.ButtonDisplayStyle.OnCellActivate;

                        if (field.DCP_IsReadonly == 1)
                        {
                            band.Columns[field.DCP_ControlID].CellClickAction = CellClickAction.RowSelect;
                        }
                        break;
                    case "ref":
                        //e.Layout.Bands[0].Columns[field.DCP_ControlID].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.ul;
                        UltraDropDown drop = new UltraDropDown();
                        string sql = string.Empty;
                        //if (!string.IsNullOrEmpty(field.DCP_RefSQL))
                        //{
                        //    sql = string.Format(field.DCP_RefSQL, "");
                        //MethodInvoker exc = delegate
                        //{
                        ADOSys_PD_RefModule refInst = new ADOSys_PD_RefModule();
                        Sys_PD_RefModule refModule = refInst.GetListByWhere(string.Format(" and SPR_RefModule='{0}'", field.DCP_RefSQL)).FirstOrDefault();

                        if (refModule != null && !string.IsNullOrEmpty(field.DCP_RefSQL))
                        {

                            sql = refModule.SPR_RefSQL.Trim();
                            DataTable refDate = new DataTable();
                            refDate = instField.GetRefData(sql);
                            drop.DataSource = refDate.DefaultView;
                            drop.DisplayMember = field.DCP_RefValue;
                            drop.ValueMember = field.DCP_RefCode;

                            drop.Tag = field;

                            //drop.v += new EventHandler(drop_TextChanged);
                            band.Columns[field.DCP_ControlID].ValueList = drop;
                            band.Columns[field.DCP_ControlID].AutoCompleteMode = Infragistics.Win.AutoCompleteMode.SuggestAppend;

                            if (field.DCP_IsReadonly == 1)
                            {
                                band.Columns[field.DCP_ControlID].CellClickAction = CellClickAction.RowSelect;
                            }
                            drop.Rows.ColumnFilters[field.DCP_RefValue].FilterConditions.Add(FilterComparisionOperator.Contains, drop.Text);
                        }
                        else
                        {
                            DataTable refDate = new DataTable();
                            drop.DataSource = refDate.DefaultView;
                            drop.DisplayMember = field.DCP_RefValue;
                            drop.ValueMember = field.DCP_RefCode;
                            //drop.v += new EventHandler(drop_TextChanged);
                            band.Columns[field.DCP_ControlID].ValueList = drop;
                            band.Columns[field.DCP_ControlID].AutoCompleteMode = Infragistics.Win.AutoCompleteMode.SuggestAppend;

                            if (field.DCP_IsReadonly == 1)
                            {
                                band.Columns[field.DCP_ControlID].CellClickAction = CellClickAction.RowSelect;
                            }

                            //drop.Rows.ColumnFilters[field.DCP_RefValue].FilterConditions.Add(FilterComparisionOperator.Contains, drop.Text);
                        }
                        //};

                        //exc.BeginInvoke(null, null);

                        //}

                        break;
                }
            }
            if (module.SPM_IsFilter > 0)
            {
                SetExcelStyleFilter(ug_list);
            }
            ug_list.DisplayLayout.AutoFitStyle = AutoFitStyle.ExtendLastColumn;
            GridFormater.RetrieveSetGridFormat(ug_list, ug_list.DisplayLayout.Bands[0], module.SPM_Module, SessionConfig.UserID);
        }
 /// <summary>
 /// 获取指定的Sys_PD_Module对象集合
 /// </summary>
 public List<Sys_PD_Module> GetListByWhere(string strCondition)
 {
     List<Sys_PD_Module> ret = new List<Sys_PD_Module>();
      string sql = "SELECT  SPM_ID,SPM_Module,SPM_LPrefix,SPM_Name,SPM_LX,SPM_LY,SPM_TX,SPM_TY,SPM_LI,SPM_TI,SPM_CNum,SPM_TPrefix,SPM_Height,SPM_Form1,SPM_Form2,Stat,SPM_IsSummary,SPM_IsFilter FROM Sys_PD_Module WHERE 1=1 AND ((Stat is null) or (Stat=0) ) ";
      if(!string.IsNullOrEmpty(strCondition))
      {
     strCondition.Replace('\'','"'); //防sql注入
     sql += strCondition ;
      }
       //sql += " ORDER BY SPM_ID DESC ";
       SqlDataReader dr=null;
        try {
       dr=(SqlDataReader)idb.ReturnReader(sql);
      while(dr.Read())
      {
     Sys_PD_Module sys_PD_Module = new Sys_PD_Module();
     if (dr["SPM_ID"] != DBNull.Value) sys_PD_Module.SPM_ID = Convert.ToDecimal(dr["SPM_ID"]);
     if (dr["SPM_Module"] != DBNull.Value) sys_PD_Module.SPM_Module = Convert.ToString(dr["SPM_Module"]);
     if (dr["SPM_LPrefix"] != DBNull.Value) sys_PD_Module.SPM_LPrefix = Convert.ToString(dr["SPM_LPrefix"]);
     if (dr["SPM_Name"] != DBNull.Value) sys_PD_Module.SPM_Name = Convert.ToString(dr["SPM_Name"]);
     if (dr["SPM_LX"] != DBNull.Value) sys_PD_Module.SPM_LX = Convert.ToInt32(dr["SPM_LX"]);
     if (dr["SPM_LY"] != DBNull.Value) sys_PD_Module.SPM_LY = Convert.ToInt32(dr["SPM_LY"]);
     if (dr["SPM_TX"] != DBNull.Value) sys_PD_Module.SPM_TX = Convert.ToInt32(dr["SPM_TX"]);
     if (dr["SPM_TY"] != DBNull.Value) sys_PD_Module.SPM_TY = Convert.ToInt32(dr["SPM_TY"]);
     if (dr["SPM_LI"] != DBNull.Value) sys_PD_Module.SPM_LI = Convert.ToInt32(dr["SPM_LI"]);
     if (dr["SPM_TI"] != DBNull.Value) sys_PD_Module.SPM_TI = Convert.ToInt32(dr["SPM_TI"]);
     if (dr["SPM_CNum"] != DBNull.Value) sys_PD_Module.SPM_CNum = Convert.ToInt32(dr["SPM_CNum"]);
     if (dr["SPM_TPrefix"] != DBNull.Value) sys_PD_Module.SPM_TPrefix = Convert.ToString(dr["SPM_TPrefix"]);
     if (dr["SPM_Height"] != DBNull.Value) sys_PD_Module.SPM_Height = Convert.ToInt32(dr["SPM_Height"]);
     if (dr["SPM_Form1"] != DBNull.Value) sys_PD_Module.SPM_Form1 = Convert.ToString(dr["SPM_Form1"]);
     if (dr["SPM_Form2"] != DBNull.Value) sys_PD_Module.SPM_Form2 = Convert.ToString(dr["SPM_Form2"]);
     if (dr["Stat"] != DBNull.Value) sys_PD_Module.Stat = Convert.ToInt32(dr["Stat"]);
     if (dr["SPM_IsSummary"] != DBNull.Value) sys_PD_Module.SPM_IsSummary = Convert.ToInt32(dr["SPM_IsSummary"]);
     if (dr["SPM_IsFilter"] != DBNull.Value) sys_PD_Module.SPM_IsFilter = Convert.ToInt32(dr["SPM_IsFilter"]);
     ret.Add(sys_PD_Module);
      }
       }catch (System.Exception ex){ throw ex; }  finally { if (dr != null) { dr.Close(); } if (idb.GetConnection() != null && idb.GetConnection().State == ConnectionState.Open) { idb.GetConnection().Close(); }   }
      return ret;
 }
        /// <summary>
        /// 更新Sys_PD_Module对象(即:一条记录
        /// </summary>
        public int Update(Sys_PD_Module sys_PD_Module)
        {
            StringBuilder sbParameter=new StringBuilder();
              StringBuilder sb=new StringBuilder();
              sb.Append(@"UPDATE       Sys_PD_Module       SET ");
            if(sys_PD_Module.SPM_Module_IsChanged){sbParameter.Append("SPM_Module=@SPM_Module, ");}
              if(sys_PD_Module.SPM_LPrefix_IsChanged){sbParameter.Append("SPM_LPrefix=@SPM_LPrefix, ");}
              if(sys_PD_Module.SPM_Name_IsChanged){sbParameter.Append("SPM_Name=@SPM_Name, ");}
              if(sys_PD_Module.SPM_LX_IsChanged){sbParameter.Append("SPM_LX=@SPM_LX, ");}
              if(sys_PD_Module.SPM_LY_IsChanged){sbParameter.Append("SPM_LY=@SPM_LY, ");}
              if(sys_PD_Module.SPM_TX_IsChanged){sbParameter.Append("SPM_TX=@SPM_TX, ");}
              if(sys_PD_Module.SPM_TY_IsChanged){sbParameter.Append("SPM_TY=@SPM_TY, ");}
              if(sys_PD_Module.SPM_LI_IsChanged){sbParameter.Append("SPM_LI=@SPM_LI, ");}
              if(sys_PD_Module.SPM_TI_IsChanged){sbParameter.Append("SPM_TI=@SPM_TI, ");}
              if(sys_PD_Module.SPM_CNum_IsChanged){sbParameter.Append("SPM_CNum=@SPM_CNum, ");}
              if(sys_PD_Module.SPM_TPrefix_IsChanged){sbParameter.Append("SPM_TPrefix=@SPM_TPrefix, ");}
              if(sys_PD_Module.SPM_Height_IsChanged){sbParameter.Append("SPM_Height=@SPM_Height, ");}
              if(sys_PD_Module.SPM_Form1_IsChanged){sbParameter.Append("SPM_Form1=@SPM_Form1, ");}
              if(sys_PD_Module.SPM_Form2_IsChanged){sbParameter.Append("SPM_Form2=@SPM_Form2, ");}
              if(sys_PD_Module.Stat_IsChanged){sbParameter.Append("Stat=@Stat, ");}
              if(sys_PD_Module.SPM_IsSummary_IsChanged){sbParameter.Append("SPM_IsSummary=@SPM_IsSummary, ");}
              if(sys_PD_Module.SPM_IsFilter_IsChanged){sbParameter.Append("SPM_IsFilter=@SPM_IsFilter ");}
          sb.Append(sbParameter.ToString().Trim().TrimEnd(','));
              sb.Append(      " WHERE 1=1 AND ((Stat is null) or (Stat=0))   and SPM_ID=@SPM_ID; " );
              string sql=sb.ToString();
             if(sys_PD_Module.SPM_Module_IsChanged)
             {
             if (string.IsNullOrEmpty(sys_PD_Module.SPM_Module))
             {
            idb.AddParameter("@SPM_Module", DBNull.Value);
             }
             else
             {
            idb.AddParameter("@SPM_Module", sys_PD_Module.SPM_Module);
             }
              }
             if(sys_PD_Module.SPM_LPrefix_IsChanged)
             {
             if (string.IsNullOrEmpty(sys_PD_Module.SPM_LPrefix))
             {
            idb.AddParameter("@SPM_LPrefix", DBNull.Value);
             }
             else
             {
            idb.AddParameter("@SPM_LPrefix", sys_PD_Module.SPM_LPrefix);
             }
              }
             if(sys_PD_Module.SPM_Name_IsChanged)
             {
             if (string.IsNullOrEmpty(sys_PD_Module.SPM_Name))
             {
            idb.AddParameter("@SPM_Name", DBNull.Value);
             }
             else
             {
            idb.AddParameter("@SPM_Name", sys_PD_Module.SPM_Name);
             }
              }
             if(sys_PD_Module.SPM_LX_IsChanged)
             {
             if (sys_PD_Module.SPM_LX == 0)
             {
            idb.AddParameter("@SPM_LX", 0);
             }
             else
             {
            idb.AddParameter("@SPM_LX", sys_PD_Module.SPM_LX);
             }
              }
             if(sys_PD_Module.SPM_LY_IsChanged)
             {
             if (sys_PD_Module.SPM_LY == 0)
             {
            idb.AddParameter("@SPM_LY", 0);
             }
             else
             {
            idb.AddParameter("@SPM_LY", sys_PD_Module.SPM_LY);
             }
              }
             if(sys_PD_Module.SPM_TX_IsChanged)
             {
             if (sys_PD_Module.SPM_TX == 0)
             {
            idb.AddParameter("@SPM_TX", 0);
             }
             else
             {
            idb.AddParameter("@SPM_TX", sys_PD_Module.SPM_TX);
             }
              }
             if(sys_PD_Module.SPM_TY_IsChanged)
             {
             if (sys_PD_Module.SPM_TY == 0)
             {
            idb.AddParameter("@SPM_TY", 0);
             }
             else
             {
            idb.AddParameter("@SPM_TY", sys_PD_Module.SPM_TY);
             }
              }
             if(sys_PD_Module.SPM_LI_IsChanged)
             {
             if (sys_PD_Module.SPM_LI == 0)
             {
            idb.AddParameter("@SPM_LI", 0);
             }
             else
             {
            idb.AddParameter("@SPM_LI", sys_PD_Module.SPM_LI);
             }
              }
             if(sys_PD_Module.SPM_TI_IsChanged)
             {
             if (sys_PD_Module.SPM_TI == 0)
             {
            idb.AddParameter("@SPM_TI", 0);
             }
             else
             {
            idb.AddParameter("@SPM_TI", sys_PD_Module.SPM_TI);
             }
              }
             if(sys_PD_Module.SPM_CNum_IsChanged)
             {
             if (sys_PD_Module.SPM_CNum == 0)
             {
            idb.AddParameter("@SPM_CNum", 0);
             }
             else
             {
            idb.AddParameter("@SPM_CNum", sys_PD_Module.SPM_CNum);
             }
              }
             if(sys_PD_Module.SPM_TPrefix_IsChanged)
             {
             if (string.IsNullOrEmpty(sys_PD_Module.SPM_TPrefix))
             {
            idb.AddParameter("@SPM_TPrefix", DBNull.Value);
             }
             else
             {
            idb.AddParameter("@SPM_TPrefix", sys_PD_Module.SPM_TPrefix);
             }
              }
             if(sys_PD_Module.SPM_Height_IsChanged)
             {
             if (sys_PD_Module.SPM_Height == 0)
             {
            idb.AddParameter("@SPM_Height", 0);
             }
             else
             {
            idb.AddParameter("@SPM_Height", sys_PD_Module.SPM_Height);
             }
              }
             if(sys_PD_Module.SPM_Form1_IsChanged)
             {
             if (string.IsNullOrEmpty(sys_PD_Module.SPM_Form1))
             {
            idb.AddParameter("@SPM_Form1", DBNull.Value);
             }
             else
             {
            idb.AddParameter("@SPM_Form1", sys_PD_Module.SPM_Form1);
             }
              }
             if(sys_PD_Module.SPM_Form2_IsChanged)
             {
             if (string.IsNullOrEmpty(sys_PD_Module.SPM_Form2))
             {
            idb.AddParameter("@SPM_Form2", DBNull.Value);
             }
             else
             {
            idb.AddParameter("@SPM_Form2", sys_PD_Module.SPM_Form2);
             }
              }
             if(sys_PD_Module.Stat_IsChanged)
             {
             if (sys_PD_Module.Stat == 0)
             {
            idb.AddParameter("@Stat", 0);
             }
             else
             {
            idb.AddParameter("@Stat", sys_PD_Module.Stat);
             }
              }
             if(sys_PD_Module.SPM_IsSummary_IsChanged)
             {
             if (sys_PD_Module.SPM_IsSummary == 0)
             {
            idb.AddParameter("@SPM_IsSummary", 0);
             }
             else
             {
            idb.AddParameter("@SPM_IsSummary", sys_PD_Module.SPM_IsSummary);
             }
              }
             if(sys_PD_Module.SPM_IsFilter_IsChanged)
             {
             if (sys_PD_Module.SPM_IsFilter == 0)
             {
            idb.AddParameter("@SPM_IsFilter", 0);
             }
             else
             {
            idb.AddParameter("@SPM_IsFilter", sys_PD_Module.SPM_IsFilter);
             }
              }

             idb.AddParameter("@SPM_ID", sys_PD_Module.SPM_ID);

             return idb.ExeCmd(sql);
        /// <summary>
        /// 获取指定的Sys_PD_Module对象(即:一条记录
        /// </summary>
        public Sys_PD_Module GetByKey(decimal sPM_ID)
        {
            Sys_PD_Module sys_PD_Module = new Sys_PD_Module();
             string sql = "SELECT  SPM_ID,SPM_Module,SPM_LPrefix,SPM_Name,SPM_LX,SPM_LY,SPM_TX,SPM_TY,SPM_LI,SPM_TI,SPM_CNum,SPM_TPrefix,SPM_Height,SPM_Form1,SPM_Form2,Stat,SPM_IsSummary,SPM_IsFilter FROM Sys_PD_Module WHERE 1=1 AND ((Stat is null) or (Stat=0) )  AND SPM_ID=@SPM_ID ";
             idb.AddParameter("@SPM_ID", sPM_ID);

              SqlDataReader dr=null;
               try {
              dr=(SqlDataReader)idb.ReturnReader(sql);
             while(dr.Read())
             {
            if (dr["SPM_ID"] != DBNull.Value) sys_PD_Module.SPM_ID = Convert.ToDecimal(dr["SPM_ID"]);
            if (dr["SPM_Module"] != DBNull.Value) sys_PD_Module.SPM_Module = Convert.ToString(dr["SPM_Module"]);
            if (dr["SPM_LPrefix"] != DBNull.Value) sys_PD_Module.SPM_LPrefix = Convert.ToString(dr["SPM_LPrefix"]);
            if (dr["SPM_Name"] != DBNull.Value) sys_PD_Module.SPM_Name = Convert.ToString(dr["SPM_Name"]);
            if (dr["SPM_LX"] != DBNull.Value) sys_PD_Module.SPM_LX = Convert.ToInt32(dr["SPM_LX"]);
            if (dr["SPM_LY"] != DBNull.Value) sys_PD_Module.SPM_LY = Convert.ToInt32(dr["SPM_LY"]);
            if (dr["SPM_TX"] != DBNull.Value) sys_PD_Module.SPM_TX = Convert.ToInt32(dr["SPM_TX"]);
            if (dr["SPM_TY"] != DBNull.Value) sys_PD_Module.SPM_TY = Convert.ToInt32(dr["SPM_TY"]);
            if (dr["SPM_LI"] != DBNull.Value) sys_PD_Module.SPM_LI = Convert.ToInt32(dr["SPM_LI"]);
            if (dr["SPM_TI"] != DBNull.Value) sys_PD_Module.SPM_TI = Convert.ToInt32(dr["SPM_TI"]);
            if (dr["SPM_CNum"] != DBNull.Value) sys_PD_Module.SPM_CNum = Convert.ToInt32(dr["SPM_CNum"]);
            if (dr["SPM_TPrefix"] != DBNull.Value) sys_PD_Module.SPM_TPrefix = Convert.ToString(dr["SPM_TPrefix"]);
            if (dr["SPM_Height"] != DBNull.Value) sys_PD_Module.SPM_Height = Convert.ToInt32(dr["SPM_Height"]);
            if (dr["SPM_Form1"] != DBNull.Value) sys_PD_Module.SPM_Form1 = Convert.ToString(dr["SPM_Form1"]);
            if (dr["SPM_Form2"] != DBNull.Value) sys_PD_Module.SPM_Form2 = Convert.ToString(dr["SPM_Form2"]);
            if (dr["Stat"] != DBNull.Value) sys_PD_Module.Stat = Convert.ToInt32(dr["Stat"]);
            if (dr["SPM_IsSummary"] != DBNull.Value) sys_PD_Module.SPM_IsSummary = Convert.ToInt32(dr["SPM_IsSummary"]);
            if (dr["SPM_IsFilter"] != DBNull.Value) sys_PD_Module.SPM_IsFilter = Convert.ToInt32(dr["SPM_IsFilter"]);
             }
              }catch (System.Exception ex){ throw ex; }  finally { if (dr != null) { dr.Close(); } if (idb.GetConnection() != null && idb.GetConnection().State == ConnectionState.Open) { idb.GetConnection().Close(); }   }
             return sys_PD_Module;
        }
 /// <summary>
 /// 获取所有的Sys_PD_Module对象(即:一条记录
 /// </summary>
 public List<Sys_PD_Module> GetAll()
 {
     List<Sys_PD_Module> ret = new List<Sys_PD_Module>();
      string sql = "SELECT  SPM_ID,SPM_Module,SPM_LPrefix,SPM_Name,SPM_LX,SPM_LY,SPM_TX,SPM_TY,SPM_LI,SPM_TI,SPM_CNum,SPM_TPrefix,SPM_Height,SPM_Form1,SPM_Form2,Stat,SPM_IsSummary,SPM_IsFilter FROM Sys_PD_Module where 1=1 AND ((Stat is null) or (Stat=0) ) order by SPM_ID desc ";
       SqlDataReader dr=null;
        try {
       dr=(SqlDataReader)idb.ReturnReader(sql);
      while(dr.Read())
      {
     Sys_PD_Module sys_PD_Module = new Sys_PD_Module();
     if (dr["SPM_ID"] != DBNull.Value) sys_PD_Module.SPM_ID = Convert.ToDecimal(dr["SPM_ID"]);
     if (dr["SPM_Module"] != DBNull.Value) sys_PD_Module.SPM_Module = Convert.ToString(dr["SPM_Module"]);
     if (dr["SPM_LPrefix"] != DBNull.Value) sys_PD_Module.SPM_LPrefix = Convert.ToString(dr["SPM_LPrefix"]);
     if (dr["SPM_Name"] != DBNull.Value) sys_PD_Module.SPM_Name = Convert.ToString(dr["SPM_Name"]);
     if (dr["SPM_LX"] != DBNull.Value) sys_PD_Module.SPM_LX = Convert.ToInt32(dr["SPM_LX"]);
     if (dr["SPM_LY"] != DBNull.Value) sys_PD_Module.SPM_LY = Convert.ToInt32(dr["SPM_LY"]);
     if (dr["SPM_TX"] != DBNull.Value) sys_PD_Module.SPM_TX = Convert.ToInt32(dr["SPM_TX"]);
     if (dr["SPM_TY"] != DBNull.Value) sys_PD_Module.SPM_TY = Convert.ToInt32(dr["SPM_TY"]);
     if (dr["SPM_LI"] != DBNull.Value) sys_PD_Module.SPM_LI = Convert.ToInt32(dr["SPM_LI"]);
     if (dr["SPM_TI"] != DBNull.Value) sys_PD_Module.SPM_TI = Convert.ToInt32(dr["SPM_TI"]);
     if (dr["SPM_CNum"] != DBNull.Value) sys_PD_Module.SPM_CNum = Convert.ToInt32(dr["SPM_CNum"]);
     if (dr["SPM_TPrefix"] != DBNull.Value) sys_PD_Module.SPM_TPrefix = Convert.ToString(dr["SPM_TPrefix"]);
     if (dr["SPM_Height"] != DBNull.Value) sys_PD_Module.SPM_Height = Convert.ToInt32(dr["SPM_Height"]);
     if (dr["SPM_Form1"] != DBNull.Value) sys_PD_Module.SPM_Form1 = Convert.ToString(dr["SPM_Form1"]);
     if (dr["SPM_Form2"] != DBNull.Value) sys_PD_Module.SPM_Form2 = Convert.ToString(dr["SPM_Form2"]);
     if (dr["Stat"] != DBNull.Value) sys_PD_Module.Stat = Convert.ToInt32(dr["Stat"]);
     if (dr["SPM_IsSummary"] != DBNull.Value) sys_PD_Module.SPM_IsSummary = Convert.ToInt32(dr["SPM_IsSummary"]);
     if (dr["SPM_IsFilter"] != DBNull.Value) sys_PD_Module.SPM_IsFilter = Convert.ToInt32(dr["SPM_IsFilter"]);
     ret.Add(sys_PD_Module);
      }
       }catch (System.Exception ex){ throw ex; }  finally {  if (dr != null) { dr.Close(); } if (idb.GetConnection() != null && idb.GetConnection().State == ConnectionState.Open) { idb.GetConnection().Close(); }   }
      return ret;
 }
        /// <summary>
        /// 添加Sys_PD_Module对象(即:一条记录)
        /// </summary>
        public int Add(Sys_PD_Module sys_PD_Module)
        {
            string sql = "INSERT INTO Sys_PD_Module (SPM_Module,SPM_LPrefix,SPM_Name,SPM_LX,SPM_LY,SPM_TX,SPM_TY,SPM_LI,SPM_TI,SPM_CNum,SPM_TPrefix,SPM_Height,SPM_Form1,SPM_Form2,Stat,SPM_IsSummary,SPM_IsFilter) VALUES (@SPM_Module,@SPM_LPrefix,@SPM_Name,@SPM_LX,@SPM_LY,@SPM_TX,@SPM_TY,@SPM_LI,@SPM_TI,@SPM_CNum,@SPM_TPrefix,@SPM_Height,@SPM_Form1,@SPM_Form2,@Stat,@SPM_IsSummary,@SPM_IsFilter)";
             if (string.IsNullOrEmpty(sys_PD_Module.SPM_Module))
             {
            idb.AddParameter("@SPM_Module", DBNull.Value);
             }
             else
             {
            idb.AddParameter("@SPM_Module", sys_PD_Module.SPM_Module);
             }
             if (string.IsNullOrEmpty(sys_PD_Module.SPM_LPrefix))
             {
            idb.AddParameter("@SPM_LPrefix", DBNull.Value);
             }
             else
             {
            idb.AddParameter("@SPM_LPrefix", sys_PD_Module.SPM_LPrefix);
             }
             if (string.IsNullOrEmpty(sys_PD_Module.SPM_Name))
             {
            idb.AddParameter("@SPM_Name", DBNull.Value);
             }
             else
             {
            idb.AddParameter("@SPM_Name", sys_PD_Module.SPM_Name);
             }
             if (sys_PD_Module.SPM_LX == 0)
             {
            idb.AddParameter("@SPM_LX", 0);
             }
             else
             {
            idb.AddParameter("@SPM_LX", sys_PD_Module.SPM_LX);
             }
             if (sys_PD_Module.SPM_LY == 0)
             {
            idb.AddParameter("@SPM_LY", 0);
             }
             else
             {
            idb.AddParameter("@SPM_LY", sys_PD_Module.SPM_LY);
             }
             if (sys_PD_Module.SPM_TX == 0)
             {
            idb.AddParameter("@SPM_TX", 0);
             }
             else
             {
            idb.AddParameter("@SPM_TX", sys_PD_Module.SPM_TX);
             }
             if (sys_PD_Module.SPM_TY == 0)
             {
            idb.AddParameter("@SPM_TY", 0);
             }
             else
             {
            idb.AddParameter("@SPM_TY", sys_PD_Module.SPM_TY);
             }
             if (sys_PD_Module.SPM_LI == 0)
             {
            idb.AddParameter("@SPM_LI", 0);
             }
             else
             {
            idb.AddParameter("@SPM_LI", sys_PD_Module.SPM_LI);
             }
             if (sys_PD_Module.SPM_TI == 0)
             {
            idb.AddParameter("@SPM_TI", 0);
             }
             else
             {
            idb.AddParameter("@SPM_TI", sys_PD_Module.SPM_TI);
             }
             if (sys_PD_Module.SPM_CNum == 0)
             {
            idb.AddParameter("@SPM_CNum", 0);
             }
             else
             {
            idb.AddParameter("@SPM_CNum", sys_PD_Module.SPM_CNum);
             }
             if (string.IsNullOrEmpty(sys_PD_Module.SPM_TPrefix))
             {
            idb.AddParameter("@SPM_TPrefix", DBNull.Value);
             }
             else
             {
            idb.AddParameter("@SPM_TPrefix", sys_PD_Module.SPM_TPrefix);
             }
             if (sys_PD_Module.SPM_Height == 0)
             {
            idb.AddParameter("@SPM_Height", 0);
             }
             else
             {
            idb.AddParameter("@SPM_Height", sys_PD_Module.SPM_Height);
             }
             if (string.IsNullOrEmpty(sys_PD_Module.SPM_Form1))
             {
            idb.AddParameter("@SPM_Form1", DBNull.Value);
             }
             else
             {
            idb.AddParameter("@SPM_Form1", sys_PD_Module.SPM_Form1);
             }
             if (string.IsNullOrEmpty(sys_PD_Module.SPM_Form2))
             {
            idb.AddParameter("@SPM_Form2", DBNull.Value);
             }
             else
             {
            idb.AddParameter("@SPM_Form2", sys_PD_Module.SPM_Form2);
             }
             if (sys_PD_Module.Stat == 0)
             {
            idb.AddParameter("@Stat", 0);
             }
             else
             {
            idb.AddParameter("@Stat", sys_PD_Module.Stat);
             }
             if (sys_PD_Module.SPM_IsSummary == 0)
             {
            idb.AddParameter("@SPM_IsSummary", 0);
             }
             else
             {
            idb.AddParameter("@SPM_IsSummary", sys_PD_Module.SPM_IsSummary);
             }
             if (sys_PD_Module.SPM_IsFilter == 0)
             {
            idb.AddParameter("@SPM_IsFilter", 0);
             }
             else
             {
            idb.AddParameter("@SPM_IsFilter", sys_PD_Module.SPM_IsFilter);
             }

             return idb.ExeCmd(sql);
        }
Exemple #9
0
        public Size GenerateTipsForm(Sys_PD_Module module, List<Sys_PD_Filed> filedList, Control ctr, Point p)
        {
            Sys_PD_RefModule refModule = new Sys_PD_RefModule();
            ctr.Tag = module;
            ctr.Text = module.SPM_Name;

            int iTabInex = 0;
            int xPosition = p.X;
            int yPosition = p.Y;
            int vXPosition = p.X;
            int step = 0;//控制一行已经输出多少列
            int fTI = module.SPM_TI;
            int fTX = module.SPM_TX;
            int fTY = module.SPM_TY;
            int fHeight = module.SPM_Height;
            int controlWidth = 0;
            int controlHeight = 0;

            Size lableSize = new Size(module.SPM_LX, module.SPM_LY);//标签的大小
            Size textSize = new Size(fTX, fTY);//文本框的大小
            Size areaSize = new Size((fTX * 2) + module.SPM_LX + module.SPM_LI, fTY * 3);//备注框大小
            foreach (Sys_PD_Filed field in filedList)
            {

                if (field.DCP_IsHidden == 1)
                {
                    UltraTextEditor _hiddenBox = new UltraTextEditor();
                    _hiddenBox.Location = new System.Drawing.Point(vXPosition, yPosition);
                    _hiddenBox.Name = module.SPM_TPrefix + field.DCP_ControlID;
                    _hiddenBox.Visible = false;
                    ctr.Controls.Add(_hiddenBox);
                    continue;
                }
                if (field.DCP_Style == "newline" ||
                    (field.DCP_ControlType == "textarea" &&
                    step > module.SPM_CNum - 2))
                {
                    step = 0;
                    vXPosition = xPosition;
                    yPosition += fHeight;
                }

                fTI = module.SPM_TI;
                fTX = module.SPM_TX;
                fTY = module.SPM_TY;
                fHeight = module.SPM_Height;
                textSize = new Size(fTX, fTY);//文本框的大小
                areaSize = new Size((fTX * 2) + module.SPM_LX + module.SPM_LI, fTY * 3);

                /////////如果字段有自定义的大小,则赋值到相关模块
                if (field.DCP_TI != 0 && field.DCP_TX != 0 && field.DCP_TY != 0 && field.DCP_Height != 0)
                {
                    textSize = new Size(field.DCP_TX, field.DCP_TY);
                    areaSize = new Size(field.DCP_TX, field.DCP_TY);
                    fTX = field.DCP_TX;
                    fTY = field.DCP_TY;
                    fTI = field.DCP_TI;
                    fHeight = field.DCP_Height;
                }

                Infragistics.Win.Misc.UltraLabel _lab = new Infragistics.Win.Misc.UltraLabel();
                _lab.Location = new Point(vXPosition, yPosition + 6);
                _lab.Name = module.SPM_LPrefix + field.DCP_ControlID.ToString();
                _lab.Size = lableSize;
                _lab.TabIndex = iTabInex++;
                _lab.Text = field.DCP_Label.ToString();
                ctr.Controls.Add(_lab);

                vXPosition += module.SPM_LI;

                #region 控件生成
                switch (field.DCP_ControlType)
                {
                    case "dec":
                        UltraNumericEditor _numBox = new UltraNumericEditor();
                        _numBox.Location = new System.Drawing.Point(vXPosition, yPosition);
                        _numBox.Name = module.SPM_TPrefix + field.DCP_ControlID;
                        _numBox.Size = textSize;
                        _numBox.NumericType = NumericType.Double;
                        _numBox.TabIndex = iTabInex++;
                        _numBox.PromptChar = ' ';
                        _numBox.Nullable = true;
                        _numBox.NullText = "0";
                        if (field.DCP_IsReadonly == 1)
                        {
                            _numBox.ReadOnly = true;
                        }
                        ctr.Controls.Add(_numBox);
                        break;
                    case "int":
                        UltraNumericEditor _intBox = new UltraNumericEditor();
                        _intBox.Location = new System.Drawing.Point(vXPosition, yPosition);
                        _intBox.Name = module.SPM_TPrefix + field.DCP_ControlID;
                        _intBox.Size = textSize;
                        _intBox.NumericType = NumericType.Integer;
                        _intBox.TabIndex = iTabInex++;
                        if (field.DCP_IsReadonly == 1)
                        {
                            _intBox.ReadOnly = true;
                        }
                        _intBox.PromptChar = ' ';
                        _intBox.Nullable = true;
                        _intBox.NullText = "";
                        ctr.Controls.Add(_intBox);
                        break;
                    case "text":
                        UltraTextEditor _textBox = new UltraTextEditor();
                        _textBox.Location = new System.Drawing.Point(vXPosition, yPosition);
                        _textBox.Name = module.SPM_TPrefix + field.DCP_ControlID;
                        _textBox.Size = textSize;
                        _textBox.TabIndex = iTabInex++;
                        _textBox.Nullable = true;
                        if (field.DCP_IsReadonly == 1)
                        {
                            _textBox.ReadOnly = true;
                        }
                        ctr.Controls.Add(_textBox);
                        break;
                    case "textl":
                        UltraTextEditor _texBox = new UltraTextEditor();
                        _texBox.Location = new System.Drawing.Point(vXPosition, yPosition);
                        _texBox.Name = module.SPM_TPrefix + field.DCP_ControlID;
                        _texBox.Size = new Size(textSize.Width * 2, textSize.Height);
                        _texBox.TabIndex = iTabInex++;
                        if (field.DCP_IsReadonly == 1)
                        {
                            _texBox.ReadOnly = true;
                        }
                        ctr.Controls.Add(_texBox);
                        step++;
                        vXPosition += (fTI + module.SPM_LI);
                        break;
                    case "textarea":

                        UltraTextEditor _mBox = new UltraTextEditor();
                        _mBox.Location = new System.Drawing.Point(vXPosition, yPosition);
                        _mBox.Name = module.SPM_TPrefix + field.DCP_ControlID;
                        _mBox.Multiline = true;
                        _mBox.Size = areaSize;
                        _mBox.TabIndex = iTabInex++;
                        if (field.DCP_IsReadonly == 1)
                        {
                            _mBox.ReadOnly = true;
                        }
                        ctr.Controls.Add(_mBox);
                        break;
                    case "date":
                        UltraDateTimeEditor _dateCom = new UltraDateTimeEditor();
                        _dateCom.BackColor = System.Drawing.SystemColors.Window;
                        _dateCom.MaskInput = "yyyy-mm-dd";
                        _dateCom.SpinButtonDisplayStyle = Infragistics.Win.ButtonDisplayStyle.OnMouseEnter;
                        _dateCom.Location = new System.Drawing.Point(vXPosition, yPosition);
                        _dateCom.Name = module.SPM_TPrefix + field.DCP_ControlID;
                        _dateCom.Size = textSize;
                        _dateCom.TabIndex = iTabInex++;
                        _dateCom.Value = DateTime.Now;
                        _dateCom.PromptChar = ' ';
                        _dateCom.Nullable = true;
                        _dateCom.NullText = DateTime.Now.ToString();
                        if (field.DCP_IsReadonly == 1)
                        {
                            _dateCom.ReadOnly = true;
                        }
                        ctr.Controls.Add(_dateCom);
                        break;
                    case "time":
                        UltraDateTimeEditor _timeCom = new UltraDateTimeEditor();
                        _timeCom.BackColor = System.Drawing.SystemColors.Window;
                        _timeCom.MaskInput = "yyyy-mm-dd hh:mm";
                        _timeCom.SpinButtonDisplayStyle = Infragistics.Win.ButtonDisplayStyle.OnMouseEnter;
                        _timeCom.Location = new System.Drawing.Point(vXPosition, yPosition);
                        _timeCom.Name = module.SPM_TPrefix + field.DCP_ControlID;
                        _timeCom.Size = textSize;
                        _timeCom.TabIndex = iTabInex++;
                        _timeCom.Value = DateTime.Now;
                        _timeCom.PromptChar = ' ';
                        _timeCom.Nullable = true;
                        _timeCom.NullText = DateTime.Now.ToString();
                        if (field.DCP_IsReadonly == 1)
                        {
                            _timeCom.ReadOnly = true;
                        }
                        ctr.Controls.Add(_timeCom);
                        break;
                    case "dict":
                        UltraComboEditor _comEdit = new UltraComboEditor();
                        _comEdit.Location = new System.Drawing.Point(vXPosition, yPosition);
                        _comEdit.Name = module.SPM_TPrefix + field.DCP_ControlID;
                        _comEdit.Size = textSize;
                        _comEdit.TabIndex = iTabInex++;
                        _comEdit.DropDownStyle = DropDownStyle.DropDownList;
                        _comEdit.Tag = field;
                        if (field.DCP_IsReadonly == 1)
                        {
                            _comEdit.ReadOnly = true;
                        }
                        _comEdit.ValueChanged += new EventHandler(_comEdit_ValueChanged);

                        ctr.Controls.Add(_comEdit);
                        //ExcuteWithReturnValue ddd = new ExcuteWithReturnValue(this.SetDictValue);

                        //ddd.BeginInvoke(_comEdit, field.DCP_Type, null, null);
                        SetDictValue(_comEdit, field.DCP_Type);
                        break;
                    case "ref":
                        #region UltraGrid 界面设置

                        UltraCombo uCom = new UltraCombo();
                        #endregion
                        uCom.Location = new System.Drawing.Point(vXPosition, yPosition);
                        uCom.Name = module.SPM_TPrefix + field.DCP_ControlID;
                        uCom.Size = textSize;
                        uCom.TabIndex = iTabInex++;
                        uCom.Tag = field;
                        //uCom.Text =
                        ctr.Controls.Add(uCom);
                        //if (uCom.Value == null)
                        //{
                        //    uCom.Value = "";
                        //}

                        string sql = string.Empty;
                        if (!string.IsNullOrEmpty(field.DCP_RefSQL))
                        {
                            refModule = instRef.GetListByWhere(string.Format(" and SPR_RefModule='{0}'", field.DCP_RefSQL)).FirstOrDefault();//获取参考
                            if (refModule != null)
                            {
                                sql = string.Format(refModule.SPR_RefSQL.Trim(), "", "");
                                DataTable refDate = new DataTable();
                                refDate = instField.GetRefData(sql);
                                uCom.DataSource = refDate.DefaultView;
                                uCom.DisplayMember = refModule.SPR_RefData;
                                uCom.ValueMember = refModule.SPR_RefValue;
                            }
                        }
                        if (!string.IsNullOrEmpty(field.DCP_PControl))
                        {
                            uCom.Enabled = false;
                        }

                        uCom.ValueChanged += new EventHandler(uCom_ValueChanged);
                        //uCom.BeforeDropDown += new System.ComponentModel.CancelEventHandler(uCom_BeforeDropDown);
                        uCom.TextChanged += new EventHandler(uCom_TextChanged);
                        //uCom.LostFocus += new EventHandler(uCom_LostFocus);
                        //uCom.InitializeLayout += new InitializeLayoutEventHandler(uCom_InitializeLayout);

                        if (field.DCP_IsReadonly == 1)
                        {
                            uCom.ReadOnly = true;
                        }
                        break;
                }
                #endregion

                if (field.DCP_ControlType == "textarea" && step + 2 < module.SPM_CNum - 2)
                {
                    vXPosition += fTI;//
                    step++;
                }
                else if (field.DCP_ControlType == "textarea" && step + 2 > module.SPM_CNum - 2)
                {
                    step = module.SPM_CNum - 1;

                    if (field.DCP_TI != 0 && field.DCP_TX != 0 && field.DCP_TY != 0 && field.DCP_Height != 0)
                    {
                        yPosition += fHeight;
                    }
                    else
                    {
                        yPosition += fHeight * 2 - 14; ;
                    }
                }

                vXPosition += fTI;
                if (controlWidth < vXPosition)
                {
                    controlWidth = vXPosition;
                }
                if (controlHeight < yPosition + module.SPM_Height)
                {
                    controlHeight = yPosition + module.SPM_Height;
                }
                if (step == module.SPM_CNum - 1)
                {
                    step = 0;
                    vXPosition = xPosition;
                    yPosition += module.SPM_Height;
                }
                else
                {
                    step++;
                }
            }
            ctr.Height = controlHeight;
            Size point = new Size(controlWidth + 20, controlHeight + 10);
            ctr.KeyUp += new KeyEventHandler(ctr_KeyUp);
            return point;
        }
Exemple #10
0
        public List<Label> GenerateLabelList(string moduleName, Control ctr)
        {
            List<Label> list = new List<Label>();
            Sys_PD_Module module = new Sys_PD_Module();
            module = instModule.GetListByWhere(" and SPM_Module='" + moduleName + "'").FirstOrDefault();
            List<Sys_PD_Filed> filedList = new List<Sys_PD_Filed>();
            filedList = instField.GetListByWhere(" and DCP_ModuleName='" + moduleName + "' order by DCP_Order").ToList();

            ctr.Tag = module;
            Point p = new Point(module.SPM_LX, module.SPM_LY);
            int iTabInex = 0;
            int xPosition = p.X;
            int yPosition = p.Y;
            int vXPosition = p.X;
            int fHeight = module.SPM_Height;
            foreach (Sys_PD_Filed field in filedList)
            {
                if (field.DCP_Style == "newline")//换行,则将高度增加,横向坐标返回原坐标
                {
                    vXPosition = xPosition;
                    yPosition += fHeight;
                }

                //打印数据项的说明
                Label _labDesp = new Label();
                _labDesp.Location = new Point(vXPosition, yPosition);
                _labDesp.Name = "d" + field.DCP_ControlID.ToString();
                _labDesp.Size = new Size(int.Parse(field.DCP_Udef1), int.Parse(field.DCP_Udef2));
                _labDesp.TabIndex = iTabInex++;
                _labDesp.Text = field.DCP_Label + ":";
                ctr.Controls.Add(_labDesp);

                vXPosition += int.Parse(field.DCP_PageName);
                //if (field.DCP_IsHidden == 1)
                //{
                //    UltraTextEditor _hiddenBox = new UltraTextEditor();
                //    _hiddenBox.Location = new System.Drawing.Point(vXPosition, yPosition);
                //    _hiddenBox.Name = module.SPM_TPrefix + field.DCP_ControlID;
                //    _hiddenBox.Visible = false;
                //    ctr.Controls.Add(_hiddenBox);
                //    continue;
                //}

                #region 控件生成

                Label _lab = new Label();
                _lab.Location = new Point(vXPosition, yPosition);
                _lab.Name = field.DCP_ControlID.ToString();
                _lab.Size = new Size(field.DCP_TX, field.DCP_TY);
                _lab.TabIndex = iTabInex++;
                _lab.Text = "";
                _lab.Tag = field;
                //if (field.DCP_ControlType == "ref")
                //{
                //    #region
                //    string sql = string.Empty;
                //    if (!string.IsNullOrEmpty(field.DCP_RefSQL))
                //    {
                //        refModule = instRef.GetListByWhere(string.Format(" and SPR_RefModule='{0}'", field.DCP_RefSQL)).FirstOrDefault();//获取参考
                //        if (refModule != null)
                //        {
                //            sql = string.Format(refModule.SPR_RefSQL.Trim(), "", "");
                //            DataTable refDate = new DataTable();
                //            refDate = instField.GetRefData(sql);
                //        }
                //    }
                //    #endregion
                //}

                list.Add(_lab);
                ctr.Controls.Add(_lab);
                vXPosition += field.DCP_TI;
                //_lab.DoubleClick += new EventHandler(_lab_DoubleClick);

                #endregion
            }
            return list;
        }