두 개의 datarows를 추가하고 C#에서 같은 datatable의 세 번째 datarow에 결과를 얻을 수 있습니까? 또한 두 개의 데이터row를 결과 행에 바인딩하여 값이 변경되면 결과 행에 반영되도록 할 수 있습니까? 사전에세 번째 행에 두 개의 datarows 추가
감사 DataTable에 사용
두 개의 datarows를 추가하고 C#에서 같은 datatable의 세 번째 datarow에 결과를 얻을 수 있습니까? 또한 두 개의 데이터row를 결과 행에 바인딩하여 값이 변경되면 결과 행에 반영되도록 할 수 있습니까? 사전에세 번째 행에 두 개의 datarows 추가
감사 DataTable에 사용
편집 응답은 다시이 코드는 그냥 쓴 테스트하지 않았습니다.
public static class DataTableHandler
{
private const string COL_PRICE = "PriceColumn";
private const string COL_QUANTITY = "QuantityColumn";
public static DataTable AddTotalRow(DataTable dataTable)
{
int totalQuantity = 0;
decimal totalPrice = 0.0;
CalculateTotals(dataTable, out totalQuantity, out totalPrice);
DataRow row = dataTable.AddRow();
row.Cells[COL_QUANTITY].Value = totalQuantity;
row.Cells[COL_PRICE].Value = totalPrice;
dataTable.Rows.Add(row);
return dataTable;
}
private static void CalculateTotals(DataTable dataTable, out int totalQuantity, out decimal totalPrice)
{
totalPrice = 0.0;
totalQuantity = 0;
foreach (DataRow r in dataTable.Rows)
{
totalPrice += (decimal)r.Cells[COL_PRICE].Value;
totalQuantity += (int)r.Cells[COL_QUANTITY].Value;
}
}
}
해답을 주셔서 감사하지만 건물은 UIable의 모든 유형에 바인딩 될 수 있도록 출력으로 데이터 테이블이있는 도구입니다. 그래서 datatable 자체에서 바인딩을하고 싶습니다. 가능한가? – CMS
아, 네, datatable/dataset에 행을 추가 할 수 있습니다. 편집을 위해 코드 블록을 추가합니다. – Mantisen
제 질문은 분명하지 않다고 생각합니다. 내가 원하는 것은 'A'가 데이터 행이고 'B'가 다른 데이터 행인 경우 두 개의 datarows를 추가하는 것입니다. C = A + B를 얻을 수 있습니까? 'C'또한 이미 존재하는 데이터 행입니다. 표. 그리고 'A'와 'B'는 테이블의 유일한 행이 아닙니다. 많은 행이 있고 'A'와 'B'는 인덱스가 알려진 두 개의 선택된 행입니다. 'C'에 대해서도 색인 만이 알려져 있습니다. 나는 'A'와 'B'의 값을 'C'에 추가하고 싶다. 동일한 테이블의 모든 데이터row도 동일한 스키마를가집니다. 또한 열 이름, 색인 만 알지 못합니다. – CMS
질문을 완전히 이해하지 못했습니다. 3 행에 2 행 (각 열에 숫자 합계와 같은)의 결과를 표시 하시겠습니까? –
예. 세 번째 행은 각 열에 위의 두 행 값의 합계를 포함해야합니다. 개별 행 및 열 인덱스를 사용하지 않고이를 수행 할 수있는 방법이 있는지 알고 싶습니다. – CMS
또한 데이터 테이블에서 데이터 바인딩을 수행 할 수 있습니까? – CMS