【问题标题】:Updating DataGrid Info in Silverlight在 Silverlight 中更新 DataGrid 信息
【发布时间】:2011-02-25 14:14:32
【问题描述】:

我有一个使用 DataGrid 的 Silverlight 4 应用程序。此 DataGrid 绑定到大约 1,000 条记录的列表。这个网格上的一列是动态的,因为它应该每三十秒更新一次。

我有一个 DispatcherTimer 设置,每 30 秒触发一次。我的问题是,对我来说更新那一列的值的最佳方法是什么?

谢谢!

【问题讨论】:

    标签: silverlight binding


    【解决方案1】:

    使每个数据项代表实现 INotifyPropertyChanged 的​​行,并在更新列值时引发事件。这应该通过在更新变量后立即显示 canges 来工作。

    【讨论】:

    • 我的问题是,属性(日期时间)不会改变值。我在列上有一个值转换器,用于计算自创建记录以来的时间。因为属性本​​身不会改变值,所以值转换器永远不会被触发。有没有办法手动触发?
    • 使用某种计时器并手动触发 INotifyPropertyChanged
    • 但是如何手动触发对象集合上的 INotifyPropertyChanged 事件?我是否需要查看集合并一次触发一个事件?还是有更优雅的方式?感谢您的帮助!
    • 我认为循环是最好的解决方案,也许你可以通过只循环网格的可见部分来优化。
    猜你喜欢
    • 2011-07-02
    • 2016-10-30
    • 1970-01-01
    • 2010-12-24
    • 1970-01-01
    • 1970-01-01
    • 2011-01-18
    • 1970-01-01
    • 2011-12-09
    相关资源
    最近更新 更多