2017-11-28 6 views
1

이것이 이상하다고 생각하며 왜 작동하지 않는지 알 수 없습니다.이 코드도에 DataGridViewRow에 행을 던져합니까 : 은 내가 DataTable을 이름 tempDTDataGridViewRow에 행을 캐스팅 할 수 없습니다.

이가 작동을 가지고?

foreach (DataGridViewRow row in tempDT.Rows) 
{ 
    // do iteration  
    foreach (DataGridViewCell cell in row.Cells) 
    { 
    // do iteration 
    } 
} 
너무

이를 : 나는 그런 식으로 할 경우, 그것은 된 DataRow에 캐스팅 만 가능!

DataRow row2 = ((DataRow)tempDT.Rows[0]); 

하지만이 없습니다 :

DataGridViewRow row1 = ((DataGridViewRow)tempDT.Rows[0]); 

이유는 위와 같이 캐스팅 할 수 있습니까?

+1

plz 설명을 좀 더 잘 이해하기 위해 –

+0

행이 무엇입니까? – BadMiscuit

+0

캐스팅하려는 행의 실제 유형은 무엇입니까? –

답변

-1

은 아래 코드

public partial class Form1 : Form 
    { 
     public Form1() 
     { 
      InitializeComponent(); 
      List<Customer> lst = new List<Customer>() { new Customer() { ID = 1, Name = "XYZ" }, new Customer() { ID = 1, Name = "XYZ" } }; 

      dataGridView1.DataSource = lst; 

      DataGridViewRowCollection c = dataGridView1.Rows; 
      DataGridViewRow val = dataGridView1.Rows[0]; 
      Console.WriteLine(val.Cells[0].Value); 
     } 

     private class Customer 
     { 
      public int ID { get; set; } 
      public string Name { get; set; } 
     } 
    } 

문제는 당신이에 DataGridViewRow에 DataTable의 행 즉 DataRow를 변환하려고한다, 잘 나를 위해 노력하고 있습니다. (내가 준 코드에서 생각한 것). 이 경우 DataRow를 DataGridViewRow로 변환 할 수 없습니다.

+0

-1의 공명을 제공하십시오, ??????????? –