“虚拟”模式下的WPF文本框

时间:2010-02-23 03:17:34

标签: wpf textbox lazy-loading virtualmode

是否可以在“虚拟”模式下使用TextBox。

当用户滚动文档时,我想按需提供文本。

2 个答案:

答案 0 :(得分:1)

要使用内置虚拟化(即默认ListBox使用的VirtualizingStackPanel),您需要能够将内容分块为可以根据需要逐个加载的项目(逻辑滚动)。为任意大文本执行此操作将涉及大量预处理以计算换行并将文本分成行或行组。一旦这样做,您将需要使用从ItemsControl派生的容器而不是单个TextBox。您是否要求拥有可编辑的文本?

答案 1 :(得分:0)

我认为虚拟模式旨在通过仅按需获取和呈现数据来加速应用程序性能。如果用户正在滚动文档,那是不是暗示数据已经加载?难道你不能将TextBox数据绑定到代码隐藏中的属性,只是在用户滚动时设置该属性的值吗?