Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/281.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#[Windows窗体]第二次按下按钮时如何更新Datagridview列_C#_Datagridview_Row - Fatal编程技术网

C#[Windows窗体]第二次按下按钮时如何更新Datagridview列

C#[Windows窗体]第二次按下按钮时如何更新Datagridview列,c#,datagridview,row,C#,Datagridview,Row,我是一名学习C#的学生,从格林尼治标准时间上午11点开始,我就一直在学习C# 非常感谢您的帮助,并将尽我所能详细说明 1。我的任务是创建一个POS(类似)系统,该系统是本地的,没有连接到数据库。我决定尝试使用Datagridview通过使用项目按钮来显示“项目”、“数量”和“价格” 这里是按下按钮后的上下文和代码: 2.按钮工作正常,所需条目添加成功但是,如果我再次按下按钮,我不希望它这样做: 3.我需要的是“数量”部分,以便在再次按下按钮时自动更新数量。我在网上找到的每一件东西都能帮助那些

我是一名学习C#的学生,从格林尼治标准时间上午11点开始,我就一直在学习C# 非常感谢您的帮助,并将尽我所能详细说明

1。我的任务是创建一个POS(类似)系统,该系统是本地的,没有连接到数据库。我决定尝试使用Datagridview通过使用项目按钮来显示“项目”、“数量”和“价格”

这里是按下按钮后的上下文和代码:

2.按钮工作正常,所需条目添加成功但是,如果我再次按下按钮,我不希望它这样做

3.我需要的是“数量”部分,以便在再次按下按钮时自动更新数量。我在网上找到的每一件东西都能帮助那些希望使用“.Text”输入的人。我再次强调,我只是想通过点击按钮来实现这一点

我非常感谢您提供的任何帮助,最终看到它在我的学习中发挥作用将是有益的,我确信我也希望使用DataGriwView


谢谢

显然,您需要查找项目是否存在(培根),以及是否存在数量+=1,如果未列出数量=1

要在GridView上搜索项目,请执行以下操作:

String searchValue=“Bacon”;
int rowIndex=-1;
foreach(DataGridView1.Rows中的DataGridViewRow行)
{
if(row.Cells[1].Value.ToString().Equals(searchValue))
{
rowIndex=行索引;
打破
}
}
如果您的数据网格(dg)没有行,则添加您的项目;如果您的dg已经有行,则需要检查其中一行是否与要添加的第二个项目匹配;如果存在匹配,则通过将第二个数量添加到dg中的“数量”列来增加数量。另一个更好的选择是将项目添加到支持数据对象(例如列表),然后将列表绑定到dg。然后,当您需要更改数量或添加项目时,您只需要使用列表,然后绑定/更新dg,这样就不需要遍历dg行和列来查找匹配项。
        private void sandwichBacon_Button_Click(object sender, EventArgs e)
    {
        *{
            DataGridViewRow row = new DataGridViewRow();
            row.CreateCells(dataGridView1);
            row.Cells[0].Value = "Bacon";
            row.Cells[1].Value = 1 /*qty*/;
            row.Cells[2].Value = 3.5 /*price*/;
            dataGridView1.Rows.Add(row);
        }
    }