gpt4 book ai didi

c# - 在两个 ItemControls 之间移动项目时重用可视化树

转载 作者:行者123 更新时间:2023-12-03 10:43:23 26 4
gpt4 key购买 nike

我有两个 ObservableCollection在我的 ViewModel 中。两者都是相同的泛型。
窗口有两个ItemsControl s 每个都有 ItemsSource自行绑定(bind)ObservableCollection来自 ViewModel。
两者都使用相同的ItemTemplate .这个ItemTemplate是非常复杂的用户控件。
都是书本做的。

在某些情况下,我将项目从一个集合移动到另一个集合。 UI 更新正确。但是,由于控件比较复杂,在新 ItemsControl 中重新创建时需要大约 1-2 秒来渲染。 .而且由于这发生在拖放操作上,因此对用户不友好。

我想做的是以某种方式保留 ItemTemplate 的现有实例来源 ItemsControl并在目的地重用它。我不知道这是否可能,我在网上找不到任何关于它的信息。

我相信设置相当简单,但如果需要,我会编写一些简化版本的代码(我无法分享真实代码)。

谢谢你的帮助。

最佳答案

What I would like to do is to somehow preserve existing instance of ItemTemplate from source ItemsControl and reuse it in destination. I don't know if it is even possible, I couldn't find anything about it online.



恐怕不是。当您断开一个元素与可视化树的连接,然后在稍后阶段将其添加回不同的父元素时,构成该控件的所有元素都将重新呈现。

关于c# - 在两个 ItemControls 之间移动项目时重用可视化树,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41360572/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com