2013-03-26 28 views

Odpowiedz

21

Zastosowanie

DataTable dt=ds.Tables[0]; 
DataRow dr= dt.NewRow();   
DataRowView drv= dt.DefaultView[dt.Rows.IndexOf(dr)]; 
+0

Należy pamiętać, że jeśli domyślny widok został odfiltrowany, indeksy mogą nie być wyrównane. Podobne rozwiązanie http://stackoverflow.com/a/6989851/2122718 – marbel82

2

Powyższa metoda nie działa, jeśli status DataRow jest odłączona. Ten fragment kodu może być używany w takim przypadku:

 DataRow dRow = dataTable.NewRow(); 
     //... 
     DataRowView dRowView = dRow.Table.DefaultView.AddNew(); 

     for (int i = 0; i < dRow.ItemArray.Length; i++) 
     { 
      dRowView.Row[i] = dRow[i]; 
     } 
+0

Drogi @Subramani, dziękuję za pomoc i proszę, jeśli to pytanie jest przydatne, skonfiguruj głosowanie – Ali

0

Użycie. Działa również w przypadku zamówienia DataGrid.

DataRowView selecRow = dataTable.DefaultView.Cast<DataRowView>().Where(a => a.Row == desRow).FirstOrDefault();