Row를 Gridview에 바인딩하려고하는데, 이는 Category 테이블의 필드뿐만 아니라 다른 테이블의 필드도 포함합니다. 그래서 모든 필드에 대해 속성을 설정했습니다. 그러나 테이블의 열이 자주 바뀔 수 있으므로 동적으로 속성을 변경해야합니다. 나는 해시 테이블을 사용하여 다음과 같은 한 가지 방법을 발견했다. 하지만 해시 테이블 값을 gridview에 바인딩 할 수는 없습니다.C에서 동적 속성을 만들고 해시 테이블을 바인딩하십시오.
어떻게이 문제를 더 잘 해결할 수 있습니까?
public partial class Form1 : Form
{
public class Row
{
// properties
public Hashtable Properties = new Hashtable();
}
public Form1()
{
InitializeComponent();
DataClasses1DataContext context = new DataClasses1DataContext();
var st = from c in context.Categories
select c;
var p = from pr in context.Products
select p;
Row r = new Row();
//List<Row> listrow = new List<Row>();
foreach (var item in st)
{
r.Properties.Add(item.Description, item.Description);
}
this.gridControl1.DataSource = r.Properties.Values;
}
}