我在自定义ListView方面遇到了一些麻烦(CheckBoxes inside在滚动ListView时丢失了状态)。我可以在没有可视化树枚举的情况下禁用ListView虚拟化吗?
<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>发布于 2014-04-30 01:59:00
如H.B.在their answer here中所述
在
ListView上将VirtualizingStackPanel.IsVirtualizing设置为false,或将普通StackPanel设置为ListView.ItemsPanel。
<ListView VirtualizingStackPanel.IsVirtualizing="False"/>或
<ListView>
<ListView.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel></StackPanel>
</ItemsPanelTemplate>
</ListView.ItemsPanel>
</ListView>发布于 2014-04-30 02:24:56
除了绑定IsChecked属性之外
您可能还需要关闭回收
VirtualizingStackPanel.VirtualizationMode="Standard" VirtualizationMode Enumeration
https://stackoverflow.com/questions/23371810
复制相似问题