public void OnChangeColumns(DataGridViewColumnCollection cs)
 {
     if (cs != null)
     {
         EasyDataSet eds = getEasyDataSet();
         if (eds != null)
         {
             FieldList flds0 = eds.Fields;
             FieldList flds  = new FieldList();
             for (int c = 0; c < cs.Count; c++)
             {
                 EPField f = flds0[cs[c].DataPropertyName];
                 if (f == null)
                 {
                     f      = new EPField();
                     f.Name = cs[c].DataPropertyName;
                 }
                 f.FieldCaption = cs[c].HeaderText;
                 f.OleDbType    = EPField.ToOleDBType(cs[c].ValueType);
                 flds.Add(f);
             }
             eds.Fields = flds;
         }
     }
 }
 public void StartWithParameterValues(params object[] values)
 {
     if (values != null && values.Length > 0)
     {
         FieldList pl = Parameters;
         if (pl != null)
         {
             int n = Math.Min(pl.Count, values.Length);
             for (int i = 0; i < n; i++)
             {
                 if (values[i] is DateTime)
                 {
                     if (!EPField.IsDatetime(pl[i].OleDbType))
                     {
                         pl[i].OleDbType = OleDbType.DBTimeStamp;
                     }
                     if (this.IsJet)
                     {
                         DateTime dt = (DateTime)values[i];
                         pl[i].SetValue(new DateTime(dt.Year, dt.Month, dt.Day, dt.Hour, dt.Minute, dt.Second));
                     }
                     else
                     {
                         pl[i].SetValue(values[i]);
                     }
                 }
                 else
                 {
                     if (values[i] == null || values[i] == DBNull.Value)
                     {
                         pl[i].OleDbType = OleDbType.VarWChar;
                         pl[i].SetValue(null);
                     }
                     else
                     {
                         pl[i].OleDbType = EPField.ToOleDBType(values[i].GetType());
                         pl[i].SetValue(values[i]);
                     }
                 }
             }
         }
     }
     startDT();
 }
 public void LoadData(DataGridViewColumnCollection cols)
 {
     _cols = cols;
     _tbl  = new DataTable();
     _tbl.Columns.Add("ColumnName", typeof(string));
     _tbl.Columns[0].ReadOnly = true;
     _tbl.Columns.Add("HeaderText", typeof(string));
     _tbl.Columns.Add("DataType", typeof(string));
     for (int i = 0; i < cols.Count; i++)
     {
         OleDbType t = OleDbType.VarWChar;
         if (cols[i].ValueType != null)
         {
             t = EPField.ToOleDBType(cols[i].ValueType);
         }
         string tx;
         if (t == OleDbType.DBTime)
         {
             tx = "Time";
         }
         else if (EPField.IsDatetime(t))
         {
             tx = "DateTime";
         }
         else if (EPField.IsInteger(t))
         {
             tx = "Integer";
         }
         else if (EPField.IsNumber(t))
         {
             tx = "Decimal";
         }
         else if (EPField.IsBoolean(t))
         {
             tx = "Boolean";
         }
         else
         {
             tx = "Text";
         }
         string s = cols[i].DataPropertyName;
         if (string.IsNullOrEmpty(s))
         {
             s = cols[i].HeaderText;
             if (string.IsNullOrEmpty(s))
             {
                 s = cols[i].Name;
             }
         }
         string sh = cols[i].HeaderText;
         if (string.IsNullOrEmpty(sh))
         {
             sh = cols[i].DataPropertyName;
             if (string.IsNullOrEmpty(sh))
             {
                 sh = cols[i].Name;
             }
         }
         _tbl.Rows.Add(s, sh, tx);
     }
     dataGridView1.AllowUserToAddRows      = false;
     dataGridView1.AllowUserToDeleteRows   = false;
     dataGridView1.AllowUserToOrderColumns = false;
     dataGridView1.AllowUserToResizeRows   = false;
     dataGridView1.Columns.Clear();
     dataGridView1.AutoGenerateColumns     = true;
     dataGridView1.DataSource              = _tbl;
     dataGridView1.Columns[0].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
     dataGridView1.Columns[0].SortMode     = DataGridViewColumnSortMode.NotSortable;
     dataGridView1.Columns[1].SortMode     = DataGridViewColumnSortMode.NotSortable;
     dataGridView1.Columns[2].SortMode     = DataGridViewColumnSortMode.NotSortable;
 }