所以在我的程序中,我有两个数据库。 一个是'CurrentCargo',另一个是'PastOrders'
我想要做的是,当勾选“CurrentCargo”表格中的勾选框时,它将获取行中的变量并将其移动到“PastOrders”的表中。 如下图所示: Tick in tick box triggers a movement of row values 所以这就是我为我的代码输入的内容:
private void CurrentCargoTable_CellValueChanged(object sender, DataGridViewCellEventArgs e)
{
if (e.ColumnIndex == 9 && e.RowIndex >= 0)
{
bool Check = Convert.ToBoolean(CurrentCargoTable.Rows[e.RowIndex].Cells[e.ColumnIndex].Value);
int Index = 0;
int Code;
DateTime ImportDate;
DateTime ExportDate;
string From;
string To;
string TransportMode;
string Supplier;
Decimal Cost;
bool Payed;
bool Delivered;
if (Check == true)
{
Index = CurrentCargoTable.CurrentCell.RowIndex;
Code = (int)CurrentCargoTable.Rows[Index].Cells[1].Value;
ImportDate = (DateTime)CurrentCargoTable.Rows[Index].Cells[2].Value;
ExportDate = (DateTime)CurrentCargoTable.Rows[Index].Cells[3].Value;
From = (String)CurrentCargoTable.Rows[Index].Cells[4].Value;
To = (String)CurrentCargoTable.Rows[Index].Cells[5].Value;
TransportMode = (String)CurrentCargoTable.Rows[Index].Cells[6].Value;
Supplier = (String)CurrentCargoTable.Rows[Index].Cells[7].Value;
Cost = (Decimal)CurrentCargoTable.Rows[Index].Cells[8].Value;
Payed = false;
Delivered = false;
string sql = string.Format("insert into dataGridView1 (Code, Import_Date, Export_Date, From, To, TransportMode, Supplier, Cost, Payed, Delivered) values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}');", Code, ImportDate, ExportDate, From, To, TransportMode, Supplier, Cost, Payed, Delivered);
this.tableTableAdapter1.Insert(sql);
this.tableAdapterManager1.UpdateAll(this.pastOrdersDataSet);
dataGridView1.Update();
但它仍然无效。我尝试使用消息框来查看变量是否存储了正确的值。每一个人都拥有我想要的价值。所以我得到了“阅读”的一部分,但我没有得到“写作”的一部分。
如果有人知道,请帮帮我。谢谢。
答案 0 :(得分:-1)
如果没有以前的数据,可能会有以下情况(可能需要在执行前检查)
string sql = string.Format(@"Select * into CurrentCargo from PastOrders Where
PastOrders.Code = '{0}'", Code);