C# 如何在GridView c中更新值#

C# 如何在GridView c中更新值#,c#,winforms,C#,Winforms,我有4个按钮-按钮1,按钮2,按钮3,按钮4。 我有“金额”在每个按钮,这是作为变量存储 我还有一个“文本框”(输入每个按钮的兑换金额)和“应用”按钮,位于文本框旁边。 我点击按钮1,输入50卢比作为从该按钮兑换的金额,它将以按钮1=50的形式存储在GridView中 然后单击按钮2并输入20Rs。赎回和申请的金额。它将存储为按钮2=20 当我再次单击按钮1并将金额兑换为10卢比时,它正在创建新行。它不会更新现有的行值 它正在更新如下内容: 按钮1=50按钮2=20按钮1=10 我想要的是 按钮

我有4个按钮-按钮1,按钮2,按钮3,按钮4。 我有“金额”在每个按钮,这是作为变量存储

我还有一个“文本框”(输入每个按钮的兑换金额)和“应用”按钮,位于文本框旁边。 我点击按钮1,输入50卢比作为从该按钮兑换的金额,它将以按钮1=50的形式存储在GridView中

然后单击按钮2并输入20Rs。赎回和申请的金额。它将存储为按钮2=20

当我再次单击按钮1并将金额兑换为10卢比时,它正在创建新行。它不会更新现有的行值

它正在更新如下内容: 按钮1=50按钮2=20按钮1=10

我想要的是 按钮1=60按钮2=20

this.dataGridView1.Rows.Add(ButtonName, "$" + AmountRedeemed.ToString("F"));
我在点击“应用”按钮时添加了上述代码


PS:按钮生成是动态的。我尝试的是,一旦我“应用”了按钮数量,我就将其存储在键值对中。我正在检查应用的按钮是否已经存在,并更新该金额。如果没有,创建一个。但是我不知道如何在网格视图中更新结果,很难准确地告诉您代码有什么问题,但是看起来,当您单击按钮时,您正在添加一个新行

因此,与其创建新行,不如检查是否存在任何行,并使用现有行的索引

Replace - GridView.Rows.Add();

Use - Gridview.Rows[Gridview.Rows.Count-1].Cells['Button1'].Value = Convert.ToInt32(Gridview.Rows[Gridview.Rows.Count-1].Cells['Button1'].Value)+10

您可以创建一个布尔变量来检查Datagridview中是否存在按钮 差不多

        var btnExistInDataGrid = false;
        var btnTextTocheck = "Button 1";//pass button Being You clicked
        var btnClickedValueTocheck = 10;//pass button value Being You clicked
        foreach (DataGridViewRow row in dataGridView.Rows)
        {
            if (btnTextTocheck == row.Cells[0].Value.ToString())
            {
                //You must Work on the Currency..Will Throw error
                row.Cells[1].Value =
                    Convert.ToDecimal(row.Cells[1].Value.ToString()) + btnClickedValueTocheck;
                btnExistInDataGrid = true;

            }
        }

        if (btnExistInDataGrid == false)
        {
            dataGridView.Rows.Add(btnClose.Text, "" + 50.ToString("F"));// i removed Currency
        }

你介意显示你的代码吗?Hi@CyrilleConMorales-我已经在“应用”按钮中添加了下面的代码行。单击此按钮。dataGridView1.Rows.Add(ButtonName,“$”+amuntereded.ToString(“F”);不要调用
DataGridView
a
GridView
DataGrid
反之亦然!!这是错误和混乱的,因为这些是不同的控件。总是用正确的名字来称呼事物
this.dataGridView1.Rows.Add
这总是会添加新行,您是否感到惊讶??