如何設計將InfoDataGridView的Detail 某個欄位Total,回寫到Master的某個元件上?
有兩種方法:
1. 使用GridView上的計算Total的功能ExpressionColumn,配合GridView的Total方式可以對該欄位元進行加總。同時為了配合Total方式的加總,GridView提供了TotalChanged事件,由此可以取得加總值。
if (e.ColumnName == "Amount" && (infoNavigator1.GetCurrentState() == "Inserting" || infoNavigator1.GetCurrentState() == "Editing"))
{
(ibsMaster.Current as DataRowView).Row.BeginEdit();
(ibsMaster.Current as DataRowView).Row["TotalAmt"] = Convert.ToDecimal(e.TotalValue);
(ibsMaster.Current as DataRowView).Row.EndEdit();
//此方法的作用是為了當Master沒有修改的狀態下可以將這行Row的狀態變為Modifed
}

2. 可以在InfoDataGridView的CellValueChanged中寫程式,同時加一下條件判斷:
if (infonavigator.GetCurrentState() == "Inserting" || infonavigator.GetCurrentState() == "Editing" )
{
if (e.ColumnIndex == yourIndex)
textbox1.Text = infoDataGridVeiw.DoSum(colIndex, totalMode).ToString();//colIndex為列的索引,totalMode為匯總的類型
}