private void FillListView()
        {
            lvwFields.Items.Clear();
            lvwFields.ListViewItemSorter = null;

            lvwFields.BeginUpdate();
            foreach (object o in _fields)
            {
                try {
                    DataFieldColumn d = (DataFieldColumn)o;

                    string       colname = d.ColumnName + ((d.PrimaryKey)?"-[PK]":"") + ((d.VerifiedField)?"-[VERIFIED]":"") + ((d.Excluded)?"-[EXCLUDED]":"");
                    ListViewItem lvi     = lvwFields.Items.Add(colname);
                    lvi.SubItems.Add(d.FieldSetupString());
                    lvi.SubItems.Add(d.FieldDataTypeString());
                    lvi.SubItems.Add(d.FieldLabel);
                    lvi.SubItems.Add(d.TabIndex.ToString());
                    lvi.Tag = d;
                }
                catch (Exception e)
                {
                    string s  = e.Message;
                    string st = e.StackTrace;
                }
            }

            lvwFields.EndUpdate();

            //sort
            Sort();
        }
 private void DoSave()
 {
     // loop over fields setting tab index of
     // corresponding datafieldcontrol
     foreach (object o in _fields)
     {
         DataFieldColumn d = (DataFieldColumn)o;
         d.DataFieldControl.FieldTextBoxTabIndex = d.TabIndex;
     }
 }
Beispiel #3
0
        private void FillListView()
        {
            lvwColumns.Items.Clear();

            lvwColumns.BeginUpdate();
            foreach (object o in _dataFieldColumns)
            {
                DataFieldColumn d = (DataFieldColumn)o;

                string       colname = d.ColumnName + ((d.PrimaryKey)?"-[PK]":"") + ((d.VerifiedField)?"-[VERIFIED]":"");
                ListViewItem lvi     = lvwColumns.Items.Add(colname);
                lvi.SubItems.Add(d.FieldSetupString());
                lvi.SubItems.Add(d.FieldDataTypeString());
                lvi.SubItems.Add(d.TableColumnOrder.ToString());
                lvi.Tag = d;
            }
            lvwColumns.EndUpdate();
        }
Beispiel #4
0
        private void btnUpdateSelected_Click(object sender, System.EventArgs e)
        {
            // iterate over selected columns and set field properties
//			foreach(object o in listboxColumns.SelectedItems)
//			{
//				DataFieldColumn dc = (DataFieldColumn)o;
//
//				dc.IsInsertField = chkIsInsertField.Checked;
//				dc.IsInsertValueRequired = chkIsInsertValueRequired.Checked;
//				dc.IsEntryField = chkIsEntryField.Checked;
//				dc.IsEntryValueRequired = chkIsEntryValueRequired.Checked;
//				dc.IsReadOnly = chkIsReadOnly.Checked;
//				dc.IsDoubleEntryField = chkIsDoubleEntryField.Checked;
//			}

//			string s = string.Empty;
//			foreach(Object oo in _dataFieldColumns)
//			{	DataFieldColumn dc = (DataFieldColumn)oo;
//				s += dc.ToString();
//
//			}
//			txtTest.Text = s;
//
//			listboxColumns.DataSource = null;
//			listboxColumns.DataSource = _dataFieldColumns;



            foreach (object o in lvwColumns.SelectedItems)
            {
                DataFieldColumn dc = (DataFieldColumn)((ListViewItem)o).Tag;

                dc.IsInsertField         = chkIsInsertField.Checked;
                dc.IsInsertValueRequired = chkIsInsertValueRequired.Checked;
                dc.IsEntryField          = chkIsEntryField.Checked;
                dc.IsEntryValueRequired  = chkIsEntryValueRequired.Checked;
                dc.IsReadOnly            = chkIsReadOnly.Checked;
                dc.IsDoubleEntryField    = chkIsDoubleEntryField.Checked;
            }
            FillListView();
        }
Beispiel #5
0
        private void btnOK_Click(object sender, EventArgs e)
        {
            ExportMethodItem filterItem = (ExportMethodItem)cmbFeatures.SelectedItem;
            IQueryFilter     filter     = filterItem.QueryFilter;

            filter.SubFields = String.Empty;

            DataTable tab       = new DataTable();
            IField    dataField = ((FieldItem)cmbDataFields.SelectedItem).Field;

            filter.AddField(dataField.name);
            tab.Columns.Add(new DataFieldColumn(dataField.name));

            Fields seriesFields = new Fields();

            foreach (SymbolsListView.SymbolListViewItem item in seriesListView.Items)
            {
                seriesFields.Add(((ITableClass)_layer.Class).Fields.FindField(item.Text));
                filter.AddField(item.Text);

                IBrushColor brushColor = item.Symbol as IBrushColor;
                Color       col        = brushColor != null ? brushColor.FillColor : Color.Red;

                tab.Columns.Add(new SeriesDataColumn(item.Text)
                {
                    Color = col, SeriesName = item.SubItems[1].Text
                });
            }

            using (ICursor cursor = ((ITableClass)_layer.Class).Search(filterItem.QueryFilter))
            {
                IRow row = null;
                while ((row = NextRow(cursor)) != null)
                {
                    object dataValue = row[dataField.name];
                    if (dataValue == System.DBNull.Value)
                    {
                        continue;
                    }

                    DataRow dataRow = GetDataRow(tab, dataValue);
                    for (int i = 1, to = tab.Columns.Count; i < to; i++)
                    {
                        double val = Convert.ToDouble((row[tab.Columns[i].ColumnName] == System.DBNull.Value ? 0D : row[tab.Columns[i].ColumnName]));
                        dataRow[tab.Columns[i].ColumnName] = Convert.ToDouble(dataRow[tab.Columns[i].ColumnName]) + val;
                    }
                }
            }

            DataFieldColumn         dataCol = this.DataFieldCol(tab);
            List <SeriesDataColumn> serCols = this.SeriesColumns(tab);

            if (tab != null && tab.Rows.Count > 0 && dataCol != null && serCols != null)
            {
                Series[] ser = new Series[serCols.Count];
                for (int i = 0; i < ser.Length; i++)
                {
                    ser[i]       = new Series(serCols[i].SeriesName);
                    ser[i].Color = serCols[i].Color;
                }

                foreach (DataRow row in tab.Rows)
                {
                    for (int i = 0; i < ser.Length; i++)
                    {
                        ser[i].Points.AddXY(row[dataCol.ColumnName], row[serCols[i].ColumnName]);
                    }
                }

                for (int i = 0; i < ser.Length; i++)
                {
                    _series.Add(ser[i]);
                }
            }
        }
Beispiel #6
0
        private void btnGetColumns_Click(object sender, System.EventArgs e)
        {
            try
            {
                if (txtConnectString.Text.Trim() == string.Empty || txtSqlTable.Text.Trim() == string.Empty)
                {
                    MessageBox.Show("Both a connection string and database table are required.");
                    return;
                }

                SqlConnection  conn    = new SqlConnection(txtConnectString.Text);
                SqlDataAdapter adapter = new SqlDataAdapter("select * from " + txtSqlTable.Text, conn);
                DataTable      dt      = new DataTable(txtSqlTable.Text);
                adapter.FillSchema(dt, SchemaType.Source);

                // throw an error if table doesn't contain a single field
                // primary key thats an identity field.
                _primaryKeyColumnName = string.Empty;
                string errMessage = string.Empty;
                if (dt.PrimaryKey.GetLength(0) != 1)
                {
                    errMessage = "Table must have a single field primary key.";
                }
                else if (dt.PrimaryKey[0].AutoIncrement != true)
                {
                    errMessage = "Table must have a single field primary key that is an Identity column.";
                }


                if (errMessage != string.Empty)
                {
                    throw new Exception(errMessage);
                }
                else
                {
                    // save primary key column name
                    _primaryKeyColumnName = dt.PrimaryKey[0].ColumnName;
                }



                _dataFieldColumns.Clear();
                _excludedDataFieldColumns.Clear();


                int tableColumnOrder = 0;
                foreach (DataColumn c in dt.Columns)
                {
                    DataFieldColumn df = new DataFieldColumn(c);

                    //set table column order
                    df.TableColumnOrder = tableColumnOrder++;

                    //set primary key flag
                    if (c.ColumnName == _primaryKeyColumnName)
                    {
                        df.PrimaryKey = true;
                    }


                    //attempt to find verified column
                    if (c.ColumnName == "verified")
                    {
                        df.VerifiedField         = true;
                        _verifiedFieldColumnName = c.ColumnName;
                    }

                    //default created, createdby, updated, updatedby to read-only
                    if (c.ColumnName.ToLower() == "created" || c.ColumnName.ToLower() == "createdby" ||
                        c.ColumnName.ToLower() == "updated" || c.ColumnName.ToLower() == "updatedby")
                    {
                        df.IsReadOnly = true;
                    }



                    _dataFieldColumns.Add(df);
                }

//				listboxColumns.DataSource = null;
//				listboxColumns.DataSource = _dataFieldColumns;
//				listboxExcluded.DataSource = null;
//				listboxExcluded.DataSource = _excludedDataFieldColumns;


                FillListView();



                //				listboxColumns.BeginUpdate();
//
//				// clear an existing contents
//				listboxColumns.Items.Clear();
//
//				foreach (DataColumn c in dt.Columns)
//				{
//					DataFieldColumn df = new DataFieldColumn(c);
//
//					//set primary key flag
//					if (c.ColumnName == _primaryKeyColumnName)
//						df.PrimaryKey = true;
//
//					listboxColumns.Items.Add(df);
//
//				}
//				listboxColumns.EndUpdate();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }