【发布时间】:2010-03-11 21:42:19
【问题描述】:
我们有一个包含许多项目的 ListBox。项目通过 ObservableCollection 插入到 ListBox 中。其中一些项目可以直接在 ListBox 中进行编辑。但是,如果在索引
我们想做的是:如果一个项目处于编辑模式,我们想冻结它在屏幕上的位置。如果项目被添加到集合中并且项目周围的 UI 发生变化,这很好。但是项目在屏幕上的位置应该保持不变。
到目前为止,我唯一能做的就是附加到 ScrollChanged 事件,并且最多使用 BringIntoView 或 ScrollIntoView 方法来确保项目始终显示在 UI 中的某个位置,但我无法做到锁定它的位置。
有没有人做过这样的事情并提供帮助?
【问题讨论】:
-
我不想将此作为答案,但如果我必须这样做(并且如果您正在使用数据绑定),我会尝试的第一件事是在项目为时中断数据绑定编辑,并在编辑完成后再次设置数据上下文。