I am try to code multiple columns relation between the master-detail gridview. Below is code for relation I able link between master (tableSalesOrder
) and the detail (tableDetail
/ tableDetail2
) on ItemCode.
I try to add 2 more relations which are UOM & Location. I am seeking advise how I able to do so? I try google the solution for few days.
orderData.Tables.Add(tableSalesOrder);
orderData.Tables.Add(tableDetail);
orderData.Relations.Add("PurchaseDetails", tableSalesOrder.Columns["ItemCode"], tableDetail.Columns["ItemCode"], false);
orderData.Tables.Add(tableDetail2);
orderData.Relations.Add("SalesDetails", tableSalesOrder.Columns["ItemCode"], tableDetail2.Columns["ItemCode"], false);
gridControl1.ShowOnlyPredefinedDetails = false;
gridControl1.DataSource = tableSalesOrder;
I solved it.
orderData.Tables.Add(tableSalesOrder);
orderData.Tables.Add(tableDetail);
DataColumn[] parent1 = { tableSalesOrder.Columns["ItemCode"], tableSalesOrder.Columns["UOM"], tableSalesOrder.Columns["Location"] };
DataColumn[] child1 = { tableDetail.Columns["ItemCode"], tableDetail.Columns["UOM"], tableDetail.Columns["Location"] };
orderData.Relations.Add("PurchaseDetails", parent1, child1, false);
orderData.Tables.Add(tableDetail2);
DataColumn[] parent2 = { tableSalesOrder.Columns["ItemCode"], tableSalesOrder.Columns["UOM"], tableSalesOrder.Columns["Location"] };
DataColumn[] child2 = { tableDetail2.Columns["ItemCode"], tableDetail2.Columns["UOM"], tableDetail2.Columns["Location"] };
orderData.Relations.Add("SalesDetails", parent2, child2, false);
gridControl1.ShowOnlyPredefinedDetails = false;
gridControl1.DataSource = tableSalesOrder;