c# – 在添加项目时冻结一个listboxitem
发布时间:2020-12-15 17:47:18 所属栏目:百科 来源:网络整理
导读:我们有一个ListBox有一些项目.项目通过ObservableCollection插入列表框中.其中一些项目可以在ListBox中进行编辑.然而,如果在索引编辑的项目的索引,ListBox的整个内容向下移动. 我们想要做的是:如果一个项目处于编辑模式,我们希望冻结其在屏幕上的位置.如果
我们有一个ListBox有一些项目.项目通过ObservableCollection插入列表框中.其中一些项目可以在ListBox中进行编辑.然而,如果在索引<编辑的项目的索引,ListBox的整个内容向下移动. 我们想要做的是:如果一个项目处于编辑模式,我们希望冻结其在屏幕上的位置.如果将项目添加到集合中,并且项目周围的UI会发生更改,则会很好.但是项目的位置在屏幕上应保持不变. 到目前为止我唯一可以做的事情就是附加到ScrollChanged事件,最多使用BringIntoView或ScrollIntoView方法来确保该项目始终显示在UI的某个位置,但是我无法锁定它位置. 有人做过这样的事吗?
解决方法
我认为以下将解决您的问题:
>进入编辑模式时,请保留对要编辑对象的引用,列表框中的索引和ScrollViewer的Horizo??ntalOffset. 这将确保您正在编辑的项目将始终保持在列表和UI中完全相同的位置. 希望这能帮助你. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |