Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/rust/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# C3中的Datagridview_C#_Datagridview - Fatal编程技术网

C# C3中的Datagridview

C# C3中的Datagridview,c#,datagridview,C#,Datagridview,我正在做销售发票,我希望系统检查输入的数量是否为双倍值或否,如果为双倍值,则输入的数量必须小于数据库中的数量。检查用户输入双倍值或否是否正常,但代码的其他部分不正常。代码正常用户离开单元格并再次输入后,如果他编辑了单元格,系统将继续保存旧值(错误值)但对于第一部分,如果他输入字母,系统会给他一个错误,当他纠正错误时,系统会接受新值并让他正常离开销售。问题在第二部分,这是我的代码: private void dataGridView1_CellValidating(object sender, D

我正在做销售发票,我希望系统检查输入的数量是否为双倍值或否,如果为双倍值,则输入的数量必须小于数据库中的数量。
检查用户输入双倍值或否是否正常,但代码的其他部分不正常。代码正常用户离开单元格并再次输入后,如果他编辑了单元格,系统将继续保存旧值(错误值)但对于第一部分,如果他输入字母,系统会给他一个错误,当他纠正错误时,系统会接受新值并让他正常离开销售。问题在第二部分,这是我的代码:

private void dataGridView1_CellValidating(object sender, DataGridViewCellValidatingEventArgs e)
    {
        if (e.ColumnIndex == 3 || e.ColumnIndex == 4 || e.ColumnIndex == 5 || e.ColumnIndex == 6 || e.ColumnIndex == 7) // 1 should be your column index
        {
            if (Convert.ToString(e.FormattedValue) != "")
            {
                double i;

                if (!double.TryParse(Convert.ToString(e.FormattedValue), out i))
                {
                    e.Cancel = true;
                    MessageBox.Show("Insert correct numbers");
                }
                else
                {

                    if (e.ColumnIndex == 5)
                    {
                        qty3 = Convert.ToDouble(dataGridView1.Rows[dataGridView1.CurrentCell.RowIndex].Cells[5].Value);
                        string code = dataGridView1.Rows[dataGridView1.CurrentCell.RowIndex].Cells[0].Value.ToString();
                        sqlClass c = new sqlClass();
                        con = c.getcon();
                        con.Open();
                        c.command("select quantity from items where code='" + code + "'");
                        cmd = c.getcmd();
                        double qty2 = Convert.ToDouble(cmd.ExecuteScalar().ToString());
                        if (qty3 > qty2)
                        {
                            e.Cancel = true;
                            MessageBox.Show("You don't have enough quantity \n Quantity available is:" + qty2);

                        }
                        else
                        {
                            dataGridView1[e.ColumnIndex, e.RowIndex].ErrorText = null;
                        }

                        con.Close();
                    }
                }

                }
            }         
    }

请添加一些换行符!那么也许你能找到真正的问题。C3?C3我是说C#抱歉弄错了