WPF DataGrid 数据绑定之"List配合Dictionary"


WPF 的DataGrid是WPF中最为强大的控件之一,可以通过各种方式绑定

例如通过最为形似的dataTable来绑定

本文则用List<Dictionary<K,V>>来绑定

   DataGrid data_grid = new DataGrid();
            List<Dictionary<String, String>> list_dic = new List<Dictionary<String, String>>
                  {
                     new Dictionary<String,String>()
                     {
                         {   "可用资金","1000.0"},
                         {   "可取资金", "958.0" },
                         {   "手续费", "1.68"},
                     },
                      new Dictionary<String,String>()
                     {
                         {   "可用资金","1100.0"},
                         {   "可取资金", "1958.0" },
                         {   "手续费", "31.68"},
                     },
                  };
            foreach (var node in list_dic.First())
            {
                data_grid.Columns.Add(new DataGridTextColumn { Header = node.Key, Binding = new Binding(string.Format("[{0}]", node.Key)) });
            }
            data_grid.AutoGenerateColumns = false;  //去掉多余列
            data_grid.CanUserAddRows = false; //去掉多余行
            data_grid.ItemsSource = dic;

效果:

 

其实list这一层代表了datagrid中的行,list有多少个元素就代表有多少行。

而每行中的Dic<K,V>代表了那一行的数据,K代表表头,如可用资金,V代表值 ,

因为表头往往是固定的,所以每一个dic的K也要一 一对应。。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM