首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WPF ListView虚拟化。如何禁用ListView虚拟化?

WPF ListView虚拟化。如何禁用ListView虚拟化?
EN

Stack Overflow用户
提问于 2014-04-30 01:51:12
回答 2查看 10.7K关注 0票数 7

我在自定义ListView方面遇到了一些麻烦(CheckBoxes inside在滚动ListView时丢失了状态)。我可以在没有可视化树枚举的情况下禁用ListView虚拟化吗?

代码语言:javascript
复制
<ListView>
    <ListView.Resources>
        <Style TargetType="GridViewColumnHeader">
            <Setter Property="Visibility" Value="Collapsed" />
        </Style>
    </ListView.Resources>
    <ListView.View>
        <GridView>
            <GridViewColumn Header="Address">
                <GridViewColumn.CellTemplate>
                    <DataTemplate>
                        <CheckBox Content="{Binding Address}"/>
                    </DataTemplate>
                </GridViewColumn.CellTemplate>
            </GridViewColumn>
            <GridViewColumn Header="Name">
                <GridViewColumn.CellTemplate>
                    <DataTemplate>
                        <TextBlock Text="{Binding Name}"/>
                    </DataTemplate>
                </GridViewColumn.CellTemplate>
            </GridViewColumn>
        </GridView>
    </ListView.View>
</ListView>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-04-30 01:59:00

如H.B.在their answer here中所述

ListView上将VirtualizingStackPanel.IsVirtualizing设置为false,或将普通StackPanel设置为ListView.ItemsPanel

代码语言:javascript
复制
<ListView VirtualizingStackPanel.IsVirtualizing="False"/>

代码语言:javascript
复制
<ListView>
 <ListView.ItemsPanel>
     <ItemsPanelTemplate>
       <StackPanel></StackPanel>
      </ItemsPanelTemplate>
  </ListView.ItemsPanel>
 </ListView>
票数 14
EN

Stack Overflow用户

发布于 2014-04-30 02:24:56

除了绑定IsChecked属性之外

您可能还需要关闭回收

代码语言:javascript
复制
VirtualizingStackPanel.VirtualizationMode="Standard" 

VirtualizationMode Enumeration

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23371810

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档