我们有一个DataTable,它包含三个DataTypes Int32,String和KeyValuePair的DataColumns。填充DataTable后,它将绑定到.Net DataGrid以在webapp中显示。绑定后,未绑定具有DataType KeyValuePair的列。 DataGrid仅显示两列数据 - Int32和String列。
在我们的ItemDataBound事件处理程序中,我们可以看到DataSource是上面描述的DataTable,而DataGrid只绑定了两列。
为什么只有两列绑定的任何想法?是否记录了哪些DataType对绑定到DataGrid有效?
提前致谢。
DataTable dt = new DataTable("TestTable");
dt.Columns.Add("Column1", typeof(Int32));
dt.Columns.Add("Column2", typeof(String));
dt.Columns.Add("Column3", typeof(KeyValuePair<string, string>));
DataRow dr = dt1.NewRow();
dr["Column1"] = 1;
dr["Column2"] = "Hello World";
dr["Column3"] = new KeyValuePair<string, string>("1", "Hello World");
dt.Rows.Add(dr);
DataGrid dg = new DataGrid();
dg.AutoGenerateColumns = true;
dg.DataSource = dt;
dg.DataBind();