【问题标题】:Telerik gridview to check for row dirtyTelerik gridview 检查行脏
【发布时间】:2014-09-05 14:08:42
【问题描述】:

我们如何知道 Telerik 网格视图中的一行是否脏? 在 datagridview 我们有 IsCurrentRowDirty 属性。 Telerik 有这样的房产吗?

【问题讨论】:

  • 您是否考虑过在绑定的数据项中进行跟踪?许多业务应用程序将跟踪业务层中的对象“脏度”,而不是期望网格来执行此操作。这是 MVVM 提供的关注点分离的一部分
  • Charleh 这将要求我在更改前后比较对象的每个属性。 Winforms datagridview 提供了一个现成的 IsCurrentRowdirty 属性来做到这一点
  • 不一定 - 您可以通过 getter/setter 方法跟踪对象的属性何时更改,并在更改时标记 IsDirty。显然,这不支持 n 级撤消或知道何时将值更改回原始值 - 但这取决于您希望属性跟踪的复杂程度。大多数业务对象框架都包含此功能(如果您不需要深层业务层,还可以为您跟踪对象状态的 ORM)。最重要的是,我不认为这个属性存在,因为跟踪变化不是网格的职责
  • 如果您想自己滚动,请在此处查找一些信息。您可以创建一个基类,您的对象从中继承封装此功能,然后通过属性 getter/setter 访问它:paulstovell.com/blog/editable-object-adapter
  • 非常感谢 Cherleh。这是非常有用的。我不知道这个。

标签: winforms telerik radgridview


【解决方案1】:

使用 RadGridView 执行此操作的一种方法是使用 CellValueChanged 事件:

void radGridView1_CellValueChanged(object sender, GridViewCellEventArgs e)
{
    e.Row.Tag = "ThisRowIsDirty";
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-16
    • 2018-04-30
    • 1970-01-01
    • 1970-01-01
    • 2011-02-10
    相关资源
    最近更新 更多