private void dataGrid_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e) { int neededID = 0; try { neededID = Convert.ToInt32(dataGrid.Rows[e.RowIndex].Cells[0].Value); } catch (Exception) { } if (delete) { server.deleteByID(tableName, neededID); } if (change) { addItem_frm additem = new addItem_frm();; additem.tableName = this.tableName; additem.Text = additem.button.Text = "Изменить"; additem.change = true; additem.changeId = neededID; additem.ShowDialog(); } server.refreshDataGrid(tabParams, movingPictureBox, dataGrid); }
private void addItem_pictureBox_Click(object sender, EventArgs e) { addItem_frm additem = new addItem_frm();; additem.tableName = this.tableName; additem.Text = additem.button.Text = "Добавить"; additem.ShowDialog(); }
public static void setTableFields(addItem_frm form, string tableName, ref int totalFieldCount, ref List <string> fieldNames, ref TextBox[] textboxes, bool change, int findId) { string sqlQuery = "select * from " + tableName; MySqlConnection connection = new MySqlConnection(server.connectionStr); MySqlCommand sqlCommand = new MySqlCommand(sqlQuery, connection); connection.Open(); MySqlDataReader readerFields = sqlCommand.ExecuteReader(); totalFieldCount = readerFields.FieldCount; if (tableName == "zakaz") { totalFieldCount--; } Label[] labels = new Label[totalFieldCount]; textboxes = new TextBox[totalFieldCount - 1]; Size textBoxSize = new Size(132, 20); int X = 23, lastLabelY = 58; int lastTextBoxY = 75; //Динамически со3даем лэйблы и текстбоксы для каждого и3 поелй for (int i = 1; i < totalFieldCount; i++) { labels[i - 1] = new Label(); labels[i - 1].Text = readerFields.GetName(i); fieldNames.Add(readerFields.GetName(i)); labels[i - 1].Location = new Point(X, lastLabelY); labels[i - 1].Size = new Size(132, 12); lastLabelY += 40; textboxes[i - 1] = new TextBox(); textboxes[i - 1].Location = new Point(X, lastTextBoxY); textboxes[i - 1].Size = textBoxSize; lastTextBoxY += 40; form.Size = new Size(form.Size.Width, form.Size.Height + 40); } readerFields.Close(); if (change) { string sql1 = "select * from " + tableName + " where id=" + findId; MySqlCommand sqlCommand1 = new MySqlCommand(sql1, connection); MySqlDataReader readerValues = sqlCommand1.ExecuteReader(); readerValues.Read(); for (int i = 1; i < totalFieldCount; i++) { textboxes[i - 1].Text = readerValues.GetString(fieldNames[i - 1]); } readerValues.Close(); } //Добавляем готовые контролы на нашу форму for (int j = 0; j < totalFieldCount - 1; j++) { form.Controls.Add(textboxes[j]); form.Controls.Add(labels[j]); } connection.Close(); }