Как выделить / мигать новую строку добавленных данных в DataGridview при нажатии кнопки Сохранить событие? - PullRequest
1 голос
/ 03 ноября 2019

У меня есть сетевое представление данных, которое заполняет данные из базы данных при событии загрузки, затем у меня есть кнопка сохранения, которая сохраняет данные из моих полей текстового поля в базу данных, автоматически добавляя их в качестве новой строки в мое сетевое представление данных. Теперь я хочу, чтобы новая строка добавленных данных мигала в течение примерно 2 секунд после появления из таблицы данных. Нужно ли использовать таймер для этого? или просто строка.DefaultCellStyle.BackColor?

 private void Cward_b_savcrse_Click(object sender, EventArgs e)
    {
        INSERT_CWARD();
    }
 protected void INSERT_CWARD()
            {
                if (Cward_cbx.Text != " ")
                {
                    try
                    {

                        string query405D = @"INSERT INTO crsward(enccode, hpercode, dtetake, tmetake, crseward, crsestat, crselock, updsw, entryby) VALUES (@enccode, @hpercode, @dtetake, @tmetake, @crseward, 'A', 'N', 'N', 'Admin')";
                        mysqlconstring.cmd = mysqlconstring.conn.CreateCommand();
                        mysqlconstring.cmd.CommandType = CommandType.Text;
                        mysqlconstring.cmd.CommandText = query405D;
                        mysqlconstring.conn.Open();
                        mysqlconstring.cmd.Parameters.AddWithValue("@enccode", Cward_lbl_encdetails.Text);
                        mysqlconstring.cmd.Parameters.AddWithValue("@hpercode", cwardhpercode);
                        mysqlconstring.cmd.Parameters.AddWithValue("@dtetake", Cward_dtecrsward.Value);
                        mysqlconstring.cmd.Parameters.AddWithValue("@tmetake", Cward_tmecrsward.Value);
                        mysqlconstring.cmd.Parameters.AddWithValue("@crseward", Cward_combox.Text);
                        mysqlconstring.cmd.ExecuteNonQuery();
                        mysqlconstring.conn.Close();
                        _REFRESH_COURSEWARDTABLE();
                        LOAD_CRSEWARD_TABLE_KEY();
                    }
                    catch (MySqlException errCrseWrdInsrt) // Mysql EXception line
                    {
                        int errorcode = errCrseWrdInsrt.Number;
                        if (errorcode == 1062)
                        {
                            MessageBox.Show("Duplicated Entry Detected, check the date / time indicated", errCrseWrdInsrt.ToString()); // 9/14/2019 if duplicated entry, repeat process and invoke user friendly message
                        }
                        else
                        {
                            MessageBox.Show(errCrseWrdInsrt.ToString(), "Contact System Administrator - Error Inserting your data", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            throw;
                        }
                        //_isClear();
                    }
                    catch (InvalidOperationException errCrseWrdInsrt)
                    {
                        MessageBox.Show(errCrseWrdInsrt.ToString(), "Contact System Administrator - Error Inserting your data", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        throw;
                    }
                    finally
                    {
                        if (mysqlconstring.conn.State == ConnectionState.Open)
                        {
                            mysqlconstring.conn.Close();
                        }
                    }
                }
                else 
                {
                    MessageBox.Show("Indicate Doctor's Order / Course in the Ward");
                }

            }
 protected void LOAD_CRSEWARD_TABLE_KEY()
            {
                mysqlconstring.conn.Open();
                try
                {
                    dgtable_pat_courseward.AutoGenerateColumns = false;
                    string query405D = "select dtetake, tmetake, crseward, entryby  from crsward where hospcode = 110767 ";
                    mysqlconstring.cmd2 = mysqlconstring.conn.CreateCommand();
                    mysqlconstring.cmd2.CommandType = CommandType.Text;
                    mysqlconstring.cmd2.CommandText = query405D;
                    mysqlconstring.adapt2.SelectCommand = mysqlconstring.cmd2;
                    mysqlconstring.adapt2.Fill(mysqlconstring.dtaset);

                    dgtable_pat_courseward.DataSource = mysqlconstring.dtaset.Tables[0];  
                }
                catch (System.ArgumentException errPatCrseWrd)
                {
                    MessageBox.Show(errPatCrseWrd.Message.ToString(), "Database Error. Please contact your System Administrator", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    throw;
                }
                finally
                {
                    if (mysqlconstring.conn.State == ConnectionState.Open)
                    {
                        mysqlconstring.conn.Close();
                    }
                }

            }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...