Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows phone 7 当样式控制ListBox的模板时,如何保持虚拟化?_Windows Phone 7_Listbox_Scrollviewer_Virtualizingstackpanel_Itemspresenter - Fatal编程技术网

Windows phone 7 当样式控制ListBox的模板时,如何保持虚拟化?

Windows phone 7 当样式控制ListBox的模板时,如何保持虚拟化?,windows-phone-7,listbox,scrollviewer,virtualizingstackpanel,itemspresenter,Windows Phone 7,Listbox,Scrollviewer,Virtualizingstackpanel,Itemspresenter,我了解到,如果样式设置不正确,ListBox将失去其虚拟化功能。正如他所说,他的解决方案是可行的 我意识到,每当我将ItemsPresenter放入另一个容器时,例如网格,边框 <ControlTemplate TargetType="ListBox"> <ScrollViewer x:Name="ScrollViewer" BorderBrush="{Template

我了解到,如果样式设置不正确,
ListBox
将失去其虚拟化功能。正如他所说,他的解决方案是可行的

我意识到,每当我将ItemsPresenter放入另一个容器时,例如
网格
边框

<ControlTemplate TargetType="ListBox">
                    <ScrollViewer x:Name="ScrollViewer" 
                                  BorderBrush="{TemplateBinding BorderBrush}" 
                                  BorderThickness="{TemplateBinding BorderThickness}" 
                                  Background="{TemplateBinding Background}" 
                                  Foreground="{TemplateBinding Foreground}" 
                                  Padding="{TemplateBinding Padding}">
                        <StackPanel>
                            <TextBlock Text="{TemplateBinding MyText}" />
                            <ItemsPresenter/>
                        </StackPanel>
                    </ScrollViewer>
</ControlTemplate>

ListBox
将立即失去其虚拟化功能。但是我确实想在
ItemsPresenter
之前放置一个
TextBlock
,并且ScrollViewer只接受一个子元素

如何应对

更新: 我看到了这一点,德里克·拉金所做的就是将
TextBlock
放在
ScrollViewer
模板中,但是如何将
TextBlock
放在
ScrollContentPresenter
中呢


p/S:我确实为我的
列表框设置了
virtualizangstackpanel
作为
ItemsPanel
,您正在为列表框创建一个itemtemplate,但是itemspresenter作为scrollviewer的直接子项非常重要。 有关如何为列表框设置模板的更多信息,请查看。我也觉得很有帮助


如果itempresenter不能是直接子项,则必须为ItemsPresenter提供名称ItemsPresenter。

你说得对。我遵循您的观点,但当我设置但它不起作用时是的,这是XAML,这是代码您关于命名项目的建议Presenter可能对海报没有帮助,但对我有帮助,所以谢谢,谢谢!!!在命名之前,我无法让虚拟化ItemsControl正常工作,即使我的ControlTemplate是最基本的格式。命名ItemsPresenter后,它就像一个符咒!