c# - Bind DataGrid to List<Dictionary<string,string>> -


i'm loading datagrid columns dynamically number of columns may vary in runtime. list of column names retrieved in prodcatlist.i want simulate adding single row quotationdg datagrid.

here's how add columns:

 foreach (productcategory prodcat in prodcatlist)  {       datagridcolumn prodcatcolumn = new datagridtextcolumn {binding = new binding(prodcat.name)};       prodcatcolumn.header = prodcat.name;        quotationdg.columns.add(prodcatcolumn);  } 

this how i'm trying add dummy row:

list<dictionary<string, string>> mydictlist = new list<dictionary<string,string>>(); dictionary<string, string> mydict = new dictionary<string, string>(); (int i=0; i<prodcatlist.count; i++) {      mydict.add(prodcatlist[i].name, prodcatlist[i].name);   }   mydictlist.add(mydict);   quotationdg.itemssource = mydictlist; } 

for first code, columns display correctly, second code row added datagrid names (in dictionary values) not displayed , columns blank. how can fix code show data in added row?

your mydist type use same object if define outside loop

for (int i=0; i<prodcatlist.count; i++) {    dictionary<string, string> mydict = new dictionary<string, string>();     mydict.add(prodcatlist[i].name, prodcatlist[i].name); }   mydictlist.add(mydict); 

Comments

Popular posts from this blog

c# - Validate object ID from GET to POST -

node.js - Custom Model Validator SailsJS -

php - Find a regex to take part of Email -