求助?为什么WPF中dataTable绑定的数据 不能更新 wpf界面binding 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 因为DataTable 没有实现 INotifyPropertyChanged接口。不能实现 数据源值改变了,通知到UI上显示。 你可以直接在后台 赋值ListView1.ItemsSource = dt; private DataTable dt = new DataTable();换成public DataTable dt {get;set;} 看错了 你没绑定....private void changeRow(object o, ElapsedEventArgs e) { if(i<8) { dt.Rows.Add(i, "2", "3"); i++; } listView1.DataContext = dt; } listView1.DataContext = dt; 这样写是不对的。这里的DataContext 数据上下文 常规应该定义为某个ViewMode类,而非具体的数据集合。 listView1.DataContext = dt; 这样写是不对的。这里的DataContext 数据上下文 常规应该定义为某个ViewMode类,而非具体的数据集合。我在另外一个地方使用了类似的方法,也是可以的。但是不同的是那个方法是类似 private DataTable UpdateDataTable(), 然后我使用listView1.DataContext =UpdateDataTable();就可以绑定成功,同时也可以更新。但是因为这个类需要一个公共的 DataTable,所以我没办法用这种办法。你说的ListView1.ItemsSource = dt; 会出现语法错误,是否应该强制转化? 你的数据源没有实现INotifyPropertyChanged接口。所以数据源改变了,没有通知到界面 listView1.DataContext = dt; 这样写是不对的。这里的DataContext 数据上下文 常规应该定义为某个ViewMode类,而非具体的数据集合。我在另外一个地方使用了类似的方法,也是可以的。但是不同的是那个方法是类似 private DataTable UpdateDataTable(), 然后我使用listView1.DataContext =UpdateDataTable();就可以绑定成功,同时也可以更新。但是因为这个类需要一个公共的 DataTable,所以我没办法用这种办法。你说的ListView1.ItemsSource = dt; 会出现语法错误,是否应该强制转化?建议不使用DataTable ,你用 ObservableCollection 这个集合了,支持动态操作数据。 listView1.DataContext = dt; 这样写是不对的。这里的DataContext 数据上下文 常规应该定义为某个ViewMode类,而非具体的数据集合。我在另外一个地方使用了类似的方法,也是可以的。但是不同的是那个方法是类似 private DataTable UpdateDataTable(), 然后我使用listView1.DataContext =UpdateDataTable();就可以绑定成功,同时也可以更新。但是因为这个类需要一个公共的 DataTable,所以我没办法用这种办法。你说的ListView1.ItemsSource = dt; 会出现语法错误,是否应该强制转化?建议不使用DataTable ,你用 ObservableCollection 这个集合了,支持动态操作数据。你说的那个ObservableCollection 太难用了,好吧我自己解决了。是用的仍然是这个方法,但是添加了一个 private void updateData() { DataTable _dt = dt.Copy(); InvokeUpdateDataTable(_dt); }的方法,然后调用该方法。不过仍然谢谢你。 listView1.DataContext = dt; 这样写是不对的。这里的DataContext 数据上下文 常规应该定义为某个ViewMode类,而非具体的数据集合。我在另外一个地方使用了类似的方法,也是可以的。但是不同的是那个方法是类似 private DataTable UpdateDataTable(), 然后我使用listView1.DataContext =UpdateDataTable();就可以绑定成功,同时也可以更新。但是因为这个类需要一个公共的 DataTable,所以我没办法用这种办法。你说的ListView1.ItemsSource = dt; 会出现语法错误,是否应该强制转化?建议不使用DataTable ,你用 ObservableCollection 这个集合了,支持动态操作数据。你说的那个ObservableCollection 太难用了,好吧我自己解决了。是用的仍然是这个方法,但是添加了一个 private void updateData() { DataTable _dt = dt.Copy(); InvokeUpdateDataTable(_dt); }的方法,然后调用该方法。不过仍然谢谢你。ObservableCollection 难用??不是吧,我感觉挺好用的。不过还是恭喜lz解决问题。 混合模式程序集是针对“v2.0.50727”版的运行时生成的,在没有配置其他信息的情况下,无法在 4.0 运行时中加载该程序集。 递归调用问题 如何获取 文档注释标记 .获取类的summary 请教个简单问题,纯属散分,老大们多指教哦。 如何获得一个字符串中某个字符出现的次数 RichTextBox怎么做到保持显示的行数固定? 在IE中打印时怎么去掉下面的文件名 怎样动态获取DATAGRID控件中的数据? 请教!多层和2层的选择! 能不能讲一讲如何使用ArrayList? winform绑定datagridview控件数据源类型是list的问题 这个功能要怎么实现
不能实现 数据源值改变了,通知到UI上显示。
ListView1.ItemsSource = dt;
private DataTable dt = new DataTable();换成public DataTable dt {get;set;}
{
if(i<8)
{
dt.Rows.Add(i, "2", "3");
i++;
}
listView1.DataContext = dt;
}
我在另外一个地方使用了类似的方法,也是可以的。但是不同的是
那个方法是类似 private DataTable UpdateDataTable(), 然后我使用listView1.DataContext =UpdateDataTable();就可以绑定成功,同时也可以更新。但是因为这个类需要一个公共的 DataTable,所以我没办法用这种办法。
你说的ListView1.ItemsSource = dt; 会出现语法错误,是否应该强制转化?
我在另外一个地方使用了类似的方法,也是可以的。但是不同的是
那个方法是类似 private DataTable UpdateDataTable(), 然后我使用listView1.DataContext =UpdateDataTable();就可以绑定成功,同时也可以更新。但是因为这个类需要一个公共的 DataTable,所以我没办法用这种办法。
你说的ListView1.ItemsSource = dt; 会出现语法错误,是否应该强制转化?
建议不使用DataTable ,你用 ObservableCollection 这个集合了,支持动态操作数据。
我在另外一个地方使用了类似的方法,也是可以的。但是不同的是
那个方法是类似 private DataTable UpdateDataTable(), 然后我使用listView1.DataContext =UpdateDataTable();就可以绑定成功,同时也可以更新。但是因为这个类需要一个公共的 DataTable,所以我没办法用这种办法。
你说的ListView1.ItemsSource = dt; 会出现语法错误,是否应该强制转化?
建议不使用DataTable ,你用 ObservableCollection 这个集合了,支持动态操作数据。
你说的那个ObservableCollection 太难用了,好吧我自己解决了。
是用的仍然是这个方法,但是添加了一个
private void updateData()
{
DataTable _dt = dt.Copy();
InvokeUpdateDataTable(_dt);
}
的方法,然后调用该方法。不过仍然谢谢你。
我在另外一个地方使用了类似的方法,也是可以的。但是不同的是
那个方法是类似 private DataTable UpdateDataTable(), 然后我使用listView1.DataContext =UpdateDataTable();就可以绑定成功,同时也可以更新。但是因为这个类需要一个公共的 DataTable,所以我没办法用这种办法。
你说的ListView1.ItemsSource = dt; 会出现语法错误,是否应该强制转化?
建议不使用DataTable ,你用 ObservableCollection 这个集合了,支持动态操作数据。
你说的那个ObservableCollection 太难用了,好吧我自己解决了。
是用的仍然是这个方法,但是添加了一个
private void updateData()
{
DataTable _dt = dt.Copy();
InvokeUpdateDataTable(_dt);
}
的方法,然后调用该方法。不过仍然谢谢你。
ObservableCollection 难用??不是吧,我感觉挺好用的。不过还是恭喜lz解决问题。