My datagridview cellvalue changed事件不起作用..C#&;SQL Server 2008
我的代码中有一个小错误。我的datagridview单元格值更改事件不起作用。当我添加任何数据时,datagrid视图中的行应该显示文本框中不工作的总量。你能帮我吗 代码:My datagridview cellvalue changed事件不起作用..C#&;SQL Server 2008,c#,sql-server-2008,C#,Sql Server 2008,我的代码中有一个小错误。我的datagridview单元格值更改事件不起作用。当我添加任何数据时,datagrid视图中的行应该显示文本框中不工作的总量。你能帮我吗 代码: private void dataGridView1\u CellValueChanged(对象发送方,DataGridViewCellEventArgs e) { 如果(e.ColumnIndex==5) txtNetAmt.Text=CellSum().ToString(); 整数和=0; 对于(int i=0;i
private void dataGridView1\u CellValueChanged(对象发送方,DataGridViewCellEventArgs e)
{
如果(e.ColumnIndex==5)
txtNetAmt.Text=CellSum().ToString();
整数和=0;
对于(int i=0;i
截图:
检查是否已声明事件绑定,如下所示: C#代码:
检查是否已声明事件绑定,如下所示: C#代码:
但您可以设置断点并告诉我们您在哪一点出错?事实上,我没有收到任何错误。只是它没有在应该显示的文本框中显示值。我是初学者。您是否在代码中获取小计值。ToString()值请尝试在add watch中进行检查。是的,我正在获取小计值。ToString()先生。实际上,这段代码的工作原理与按钮单击事件相同。但我希望它能处理cellvalue changed事件。您的图像将DiscAmt显示为第4列,将TotalAmt显示为第5列,但您的代码使用索引4和5,它们应该是3和4吗?因为索引行中的单元格使用的是该列的索引,而不是位置
sum+=Convert.ToInt32(dataGridView1.Rows[i].单元格[4].值);DiscountedSum+=Convert.ToInt32(dataGridView1.Rows[i].Cells[3].Value)代码>但您可以设置断点并告诉我们在哪一点出现错误?事实上,我没有收到任何错误。只是它没有在应该显示的文本框中显示值。我是初学者。您是否在代码中获取小计值。ToString()值请尝试在add watch中进行检查。是的,我正在获取小计值。ToString()先生。实际上,这段代码的工作原理与按钮单击事件相同。但我希望它能处理cellvalue changed事件。您的图像将DiscAmt显示为第4列,将TotalAmt显示为第5列,但您的代码使用索引4和5,它们应该是3和4吗?因为索引行中的单元格使用的是该列的索引,而不是位置sum+=Convert.ToInt32(dataGridView1.Rows[i].单元格[4].值);DiscountedSum+=Convert.ToInt32(dataGridView1.Rows[i].Cells[3].Value)代码>我应该在哪里声明它?this.dataGridView1.CellValueChanged+=new System.Windows.Forms.DataGridViewCellEventHandler(this.dataGridView1\u CellValueChanged);this.dataGridView1.CellValueChanged+=新系统.Windows.Forms.DataGridViewCellEventHandler(this.dataGridView1\u CellValueChanged);这一行在form.designer.cs上,我应该在哪里声明它?this.dataGridView1.CellValueChanged+=new System.Windows.Forms.DataGridViewCellEventHandler(this.dataGridView1\u CellValueChanged);this.dataGridView1.CellValueChanged+=新系统.Windows.Forms.DataGridViewCellEventHandler(this.dataGridView1\u CellValueChanged);这一行在form.designer.cs上
private void dataGridView1_CellValueChanged(object sender, DataGridViewCellEventArgs e)
{
if (e.ColumnIndex == 5)
txtNetAmt.Text = CellSum().ToString();
int sum = 0;
for (int i = 0; i < dataGridView1.Rows.Count; ++i)
{
sum += Convert.ToInt32(dataGridView1.Rows[i].Cells[5].Value);
}
txtNetAmt.Text = sum.ToString();
int DiscountedSum = 0;
for (int i = 0; i < dataGridView1.Rows.Count; ++i)
{
DiscountedSum += Convert.ToInt32(dataGridView1.Rows[i].Cells[4].Value);
}
txtDiscamt.Text = DiscountedSum.ToString();
int SubTotal = sum + DiscountedSum;
txtSubTotalamt.Text = SubTotal.ToString();
}
this.dataGridView1.CellValueChanged += new
DataGridViewCellEventHandler(dataGridView1_CellValueChanged);