private void Save_Click(object sender, EventArgs e) { int i = 1; ConfigurationGrid.EndEdit(); try { i = ConfigurationGrid.CurrentCell.RowIndex; } catch { } try { ConfigurationGrid.EndEdit(); if (ConfigurationGrid.RowCount == 1) { ConfigurationGrid.CurrentCell = ConfigurationGrid[1, 0]; bindingNavigatorAddNewItem.PerformClick(); ConfigurationGrid.CurrentCell = ConfigurationGrid[1, 1]; bindingSource1.RemoveCurrent(); ConfigurationGrid.CurrentCell = ConfigurationGrid[1, 0]; } else { if (i > 1) { ConfigurationGrid.CurrentCell = ConfigurationGrid[1, i - 1]; } else { ConfigurationGrid.CurrentCell = ConfigurationGrid[1, 0]; ConfigurationGrid.CurrentCell = ConfigurationGrid[1, 1]; ConfigurationGrid.CurrentCell = ConfigurationGrid[1, 0]; } ConfigurationGrid.CurrentCell = ConfigurationGrid[1, i]; } } catch { } LoadingGrid = true; ConfigurationGrid.EndEdit(); da.Update(ds.Tables[0]); ds.Tables[0].AcceptChanges(); LoadingGrid = false; System.Windows.Forms.ToolStripButton B = (System.Windows.Forms.ToolStripButton)sender; SaveAndContinue.Enabled = false; SaveAndExit.Enabled = false; Cancel.Text = "Exit"; if ((B.Name == "SaveAndExit")) { Close(); } }
private void FillGrid() { if (ds != null) { if (ds.HasChanges()) { if (MessageBox.Show("Do you Wish to Save the Changes", "Warning", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { ConfigurationGrid.EndEdit(); da.Update(ds.Tables[0]); ds.Tables[0].AcceptChanges(); } } } LoadingGrid = true; cn = new SQLiteConnection("Data Source=" + FileToUse + "; FailIfMissing=true"); cn.Open(); string SQL; SQL = "SELECT * FROM Configuration where ModuleSerialNumber = '" + ModuleSerialNumber.Items[ModuleSerialNumber.SelectedIndex].ToString() + "'"; SQLiteCommand cmd = new SQLiteCommand(SQL, cn); da = new SQLiteDataAdapter(cmd); ds = new DataSet(); try { da.Fill(ds); DataTable dt = ds.Tables[0]; bindingSource1.DataSource = dt; ConfigurationGridNavigator.BindingSource = bindingSource1; ConfigurationGrid.DataSource = bindingSource1; ConfigurationGrid.AutoGenerateColumns = true; ConfigurationGrid.Columns[0].Visible = false; ConfigurationGrid.Columns[1].AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells; ConfigurationGrid.Columns[3].AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells; ConfigurationGrid.Columns[2].Width = (ConfigurationGrid.Size.Width - (20 + ConfigurationGrid.RowHeadersWidth)) - (ConfigurationGrid.Columns[1].Width + ConfigurationGrid.Columns[3].Width); if (ConfigurationGrid.ColumnCount < 5) { DataGridViewComboBoxColumn col = new DataGridViewComboBoxColumn(); col.DataPropertyName = "ValueType"; col.HeaderText = "ValueType"; col.Width = ConfigurationGrid.Columns[3].Width; ConfigurationGrid.Columns[3].Visible = false; //col.DataSource = bindingSource1; col.ValueMember = "ValueType"; col.DisplayMember = "ValueType"; col.DisplayStyle = DataGridViewComboBoxDisplayStyle.Nothing; col.Items.Add("P"); col.Items.Add("S"); ConfigurationGrid.Columns.Add(col); } } catch (Exception ex) { Close(); } sqCommandBuilder = new SQLiteCommandBuilder(da); if (ConfigurationGrid.SortedColumn == null) { ConfigurationGrid.Sort(ConfigurationGrid.Columns[1], ListSortDirection.Ascending); } else { if (ConfigurationGrid.SortOrder == SortOrder.Ascending) { ConfigurationGrid.Sort(ConfigurationGrid.SortedColumn, ListSortDirection.Ascending); } else { ConfigurationGrid.Sort(ConfigurationGrid.SortedColumn, ListSortDirection.Descending); } } for (int i = 0; i < ConfigurationGrid.ColumnCount; i++) { ConfigurationGrid.Columns[i].SortMode = DataGridViewColumnSortMode.Automatic; } LoadingGrid = false; SaveAndContinue.Enabled = false; SaveAndExit.Enabled = false; Cancel.Text = "Exit"; }