1
我有嵌套的网格视图的层次结构。具体来说:我有一个嵌套在网格视图(比如说dt1)中的网格视图(比如dt2)。现在,我在嵌套网格视图(dt2)中嵌套了许多小网格视图,并且我想填充其中的网格视图,我发现这很乏味,因为与dt1的事件不同,dt2的rowdatabound事件没有被解雇。嵌套的GridView
我有嵌套的网格视图的层次结构。具体来说:我有一个嵌套在网格视图(比如说dt1)中的网格视图(比如dt2)。现在,我在嵌套网格视图(dt2)中嵌套了许多小网格视图,并且我想填充其中的网格视图,我发现这很乏味,因为与dt1的事件不同,dt2的rowdatabound事件没有被解雇。嵌套的GridView
有很多关于如何做到这一点的文章;我发现this one是最有帮助的。它看起来并不复杂。
显示列:
List<string> displayColumns = new List<string>();
displayColumns.Add("id");
displayColumns.Add("Name");
displayColumns.Add("Fruit");
displayColumns.Add("BoughtFrom");
displayColumns.Add("Date");
分组:
List<GroupColumn> groupColumns = new List<GroupColumn>();
groupColumns.Add(new GroupColumn("Quantity", GroupTypeEnum.Sum));
关系数据集:
SqlConnection connection = new SqlConnection("Your connection string");
connection.Open();
SqlDataAdapter dataAdapter = new SqlDataAdapter(
"SELECT id, Name, Fruit FROM FruitPrefs",
connection);
DataTable dtResult1 = new DataTable();
dataAdapter.Fill(dtResult1);
dataAdapter = new SqlDataAdapter(
"SELECT id, BoughtFrom, Date, Quantity FROM SalesRecords",
connection);
DataTable dtResult2 = new DataTable();
dataAdapter.Fill(dtResult2);
DataSet dsResults = new DataSet("Results");
dsResults.Tables.Add(dtResult1);
dsResults.Tables.Add(dtResult2);
DataRelation relation1 = new DataRelation(
"relation1",
dtResult1.Columns["id"],
dtResult2.Columns["id"]);
dsResults.Relations.Add(relation1);
装订:
DataGridSource newGridSource = new DataGridSource(
dtResult1.DataSet,
displayColumns,
groupColumns);
hierarchicalGridView1.DataSource = newGridSource;
显示你的代码,否则这个问题得不到很好的回答。 –