【发布时间】:2015-06-14 12:02:15
【问题描述】:
我正在动态加载我的数据网格列,因为列数在运行时可能会有所不同。在ProdCatList 中检索到列名列表。我想模拟将单行添加到我的 QuotationDG 数据网格中。
这是我添加列的方法:
foreach (ProductCategory ProdCat in ProdCatList)
{
DataGridColumn ProdCatColumn = new DataGridTextColumn {Binding = new Binding(ProdCat.Name)};
ProdCatColumn.Header = ProdCat.Name;
QuotationDG.Columns.Add(ProdCatColumn);
}
这就是我尝试添加虚拟行的方式:
List<Dictionary<string, string>> mydictlist = new List<Dictionary<string,string>>();
Dictionary<string, string> mydict = new Dictionary<string, string>();
for (int i=0; i<ProdCatList.Count; i++)
{
mydict.Add(ProdCatList[i].Name, ProdCatList[i].Name);
}
mydictlist.Add(mydict);
QuotationDG.ItemsSource = mydictlist;
}
对于第一个代码,列显示正确,但对于第二个代码,一行被添加到 DataGrid,但名称(在字典值中)不显示并且所有列都是空白的。 如何修复此代码以显示添加行中的数据?
【问题讨论】:
标签: c# silverlight datagrid