This is datagrid view, which is connected to access data base. There is a column called "Status" (you can see it in red square). I would like to update the text in it (Arrival) to text (In House) by pressing the "Check in button" in selected row . How can i do this? Thanks in advance.
private void searchbd_Click(object sender, EventArgs e)
{
if (tabControl1.SelectedTab == tabControl1.TabPages["tabPage1"])
{
try
{
string dtparrival = this.dateTimePicker4.Text.ToString();
string statusarrival = "Arrival";
string strSql = "SELECT * FROM guestreg WHERE g_status = '" + statusarrival + "' AND g_ad = '" + dtparrival + "'";
OleDbCommand cmd = new OleDbCommand(strSql, connection);
connection.Open();
cmd.CommandType = CommandType.Text;
OleDbDataAdapter da = new OleDbDataAdapter(cmd);
DataTable scores = new DataTable();
da.Fill(scores);
arrivaldgv.DataSource = scores;
/**************************************************************************/
this.arrivaldgv.Columns[0].Visible = false;
this.arrivaldgv.Columns["g_totalrate"].Visible = false;
this.arrivaldgv.Columns["u_added"].Visible = false;
this.arrivaldgv.Columns["u_timeadded"].Visible = false;
/**************************************************************************/
this.arrivaldgv.Columns["g_name"].HeaderText = "Name"; //1
this.arrivaldgv.Columns["g_surname"].HeaderText = "Surname"; //2
this.arrivaldgv.Columns["g_company"].HeaderText = "Company"; //3
this.arrivaldgv.Columns["g_ad"].HeaderText = "Arrival Day"; //4
this.arrivaldgv.Columns["g_dd"].HeaderText = "Departure Day"; //5
this.arrivaldgv.Columns["g_amountofdays"].HeaderText = "Amount of Days"; //6
this.arrivaldgv.Columns["g_na"].HeaderText = "Number of Adults"; //7
this.arrivaldgv.Columns["g_amountofdays"].HeaderText = "Amount of Days"; //8
this.arrivaldgv.Columns["g_room"].HeaderText = "Room Number"; //9
this.arrivaldgv.Columns["g_rate"].HeaderText = "Rate"; //10
this.arrivaldgv.Columns["g_totalrate"].HeaderText = "Total Rate"; //11
this.arrivaldgv.Columns["g_info"].HeaderText = "Information"; //12
this.arrivaldgv.Columns["u_added"].HeaderText = "User"; //13
this.arrivaldgv.Columns["u_timeadded"].HeaderText = "Time"; //14
this.arrivaldgv.Columns["g_status"].HeaderText = "Status"; //15
/**************************************************************************/
connection.Close();
}
catch
{
MessageBox.Show("Please, try again.");
}
I guess, you only want to update value in dataGridView cell, not value in database table.
The simplest way is:
private void CheckInButton_Click(object sender, EventArgs e)
{
int row = dataGridView1.CurrentCell.RowIndex;
int col = dataGridView1.CurrentCell.ColumnIndex;
dataGridView1[col, row].Value = "In House";
}
You can add some validation of course. For example: Check if any cell is selected.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.