首页 新闻 会员 周边 捐助

WPF中怎么获取dataGrid内的所有数据

0
[已解决问题] 解决于 2013-09-11 17:41

WPF中怎么获取dataGrid内的所有数据转换成table

我写的:DataTable dt = (DataTable)dataGrid1.DataContext;

取出来的数据是空。。。

请问有什么解决的办法?

WPF
..00..的主页 ..00.. | 初学一级 | 园豆:49
提问于:2013-08-02 15:44
< >
分享
最佳答案
0

DataSet ds = new DataSet();

ds = (DataTable)dataGrid1.DataContext;

DataTable dt = ds.Tables[0];
试试这个

奖励园豆:5
iEvent | 小虾三级 |园豆:529 | 2013-09-10 15:34

ds = (DataTable)dataGrid1.DataContext;

DataTable不能隐式转换DataSet

我换成ds = (DataSet)dataGrid1.DataContext;还是不对,数据为空。。

..00.. | 园豆:49 (初学一级) | 2013-09-10 15:52

@..00..: DataTable dt=dataGrid1.DataSource as DataTable
试试这个,不然的话只能循环读取了
 public DataTable GetDgToTable(DataGrid dgv)
        {
            DataTable dt = new DataTable();
            for (int count = 0; count < dgv.Columns.Count; count++)
            {
                DataColumn dc = new DataColumn(dgv.Columns[count].Name.ToString());
                dt.Columns.Add(dc);
            }
            for (int count = 0; count < dgv.Rows.Count; count++)
            {
                DataRow dr = dt.NewRow();
                for (int countsub = 0; countsub < dgv.Columns.Count; countsub++)
                {
                    dr[countsub] = Convert.ToString(dgv.Rows[count].Cells[countsub].Value);
                }
                dt.Rows.Add(dr);
            }
            return dt;
        }
我没码代码测试,纯属猜测

iEvent | 园豆:529 (小虾三级) | 2013-09-10 17:07

@chous:asp.net  C# 没这种写法吧。。。

这个问题我当时是读取的赋值给GridView的dataset里面的数据。

..00.. | 园豆:49 (初学一级) | 2013-09-10 17:16

@..00..: 先调试的看看DataContext是不是null

iEvent | 园豆:529 (小虾三级) | 2013-09-10 17:19

@chous: 是

..00.. | 园豆:49 (初学一级) | 2013-09-10 17:20

@..00..: 哦,那应该是赋值有错吧

iEvent | 园豆:529 (小虾三级) | 2013-09-10 17:22

@..00..: 我这是WPF,目测都是C#,差别不大

iEvent | 园豆:529 (小虾三级) | 2013-09-10 17:23

@chous: 我当时写的就是WPF,刚没看见你写的代码。只看见DataTable dt=dataGrid1.DataSource as DataTable。。

你下面写的代码应该是对的。。

..00.. | 园豆:49 (初学一级) | 2013-09-10 17:27
其他回答(2)
0

这种集合控件有ItemsSource属性,是个IEnumerable类型的,DataTable是不能直接绑定到ItemsSource上,也不能直接插入。。

暴力程序猿 | 园豆:296 (菜鸟二级) | 2013-08-15 13:34

不明白

支持(0) 反对(0) ..00.. | 园豆:49 (初学一级) | 2013-08-17 14:30
0

Hi , WPF中怎么获取dataGrid内的所有数据 这个问题你解决了吗? 我现在有这么一个需求:datagrid中的数据是动态变化的,每次变化后都要能够求得datagrid中某列金额的总和,我现在也不懂怎样获得datagrid内的所有数据,你知道吗?  谢谢分享。。。

波仔Robert | 园豆:165 (初学一级) | 2014-02-24 23:49

你在给datagrid动态绑定数据是获取你需要的列循环累加,不就是总和了吗。

支持(0) 反对(0) ..00.. | 园豆:49 (初学一级) | 2014-02-25 09:39

@..00..: 上面通过dataGrid1.DataContext的方法可以得到datagrid里面的所有数据吗 ?如果可以可否贴点code?   thx

支持(0) 反对(0) 波仔Robert | 园豆:165 (初学一级) | 2014-02-25 10:46

@波仔Robert: 哪个好像不行的,隔了很长时间,忘了。

支持(0) 反对(0) ..00.. | 园豆:49 (初学一级) | 2014-02-25 10:49

@..00..: 额,thx

支持(0) 反对(0) 波仔Robert | 园豆:165 (初学一级) | 2014-02-25 11:05
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册