将货币从数据网格移动到文本框以编辑然后再返回数据网格?

时间:2014-04-28 19:18:42

标签: c# wpf datagrid

我有一个程序,它使用datagrids显示数据库中的表。要编辑数据网格中的详细信息,我单击该行,该行中的数据将填充在我的文本框中。我编辑了我需要的内容,单击我的保存按钮并更新我的数据网格。

这很有效,直到我尝试使用货币表进行此操作。我得到未处理的数据类型不匹配错误。现在我很确定这是因为我有'''符号还是因为'''。因为金额是4.99英镑,但我坚持如何解决它,所以我可以将其传输到文本框并正确编辑。将数据移动到文本框工作正常,但是当我编辑和保存时,我收到错误。

将数据从数据网格移动到文本框的代码:

// Displays Payment infomation in Update Area
        if (e.RowIndex < 0 || e.ColumnIndex < 0)
        {

        }
        else
        {
            if (paymentsDataGridView.Rows[e.RowIndex].Cells[e.ColumnIndex].Value != null)
            {
                textBox_cus_id_pay.Text = "" + paymentsDataGridView.Rows[e.RowIndex].Cells["Payments_Customer_ID"].Value.ToString();
                textBox_amount.Text = paymentsDataGridView.Rows[e.RowIndex].Cells["Amount"].Value.ToString();
                textBox_join_pay.Text = paymentsDataGridView.Rows[e.RowIndex].Cells["Join_Date"].Value.ToString();
            }

在文本框中编辑后更新数据网格的代码:

 DialogResult dialogResult = MessageBox.Show("Are you sure you want to update this payment? ", "Update Payment " + textBox_forename.Text + textBox_surname.Text, MessageBoxButtons.YesNo);
        if (dialogResult == DialogResult.Yes)
        {// Updates Product Info
            if (textBox_cus_id_pay.Text == "" || textBox_amount.Text == "" || textBox_join_pay.Text == "")
            {
                MessageBox.Show("Please leave no boxes blank");
            }
            else
            {
                string payData = textBox_cus_id_pay.Text;
                command.CommandText = "UPDATE PayTable SET Payments_Customer_ID = '" + textBox_cus_id_pay.Text + "',  Amount = " + textBox_amount.Text + ", Join_Date = '" + textBox_join_pay.Text + "'";
                connect.Open();
                command.Connection = connect;
                command.ExecuteNonQuery();
                connect.Close();
                refreshPayments();
                MessageBox.Show("Payment Updated");
            }
        }

任何帮助都会非常感激!

0 个答案:

没有答案