gpt4 book ai didi

更改焦点和滚动时,带有 IsVirtualizing ="true"的 WPF TreeView 会跳来跳去

转载 作者:行者123 更新时间:2023-12-03 19:39:58 25 4
gpt4 key购买 nike

我做了一个简单的例子来重现我在 TreeView 上遇到的问题.如果我在 TreeView 中选择一个项目,向下滚动,更改 Focus ,然后在 TreeView 中选择一个项目再次,列表开始跳来跳去。

只有当我有 VirtualizingStackPanel.IsVirtualizing="True" 时才会发生这种情况.这是一个已知问题吗?有解决办法吗?

所以要重现:

  • 在列表中选择项目 1。
  • 向下滚动到列表底部
  • 单击顶部的文本框。
  • 选择列表中的第 30 项

  • 我正在使用 .Net 3.5 SP1,并且我已经在 64 位 XP 和 Vista 上尝试过它。其他环境我没试过。

    更新:我已经在 .Net 4.0 Beta 中测试过,没有出现这个问题。某处有修补程序吗?
    <Window x:Class="WpfApplication1.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="Window1" Height="300" Width="300">
    <Grid>
    <Grid.RowDefinitions>
    <RowDefinition></RowDefinition>
    <RowDefinition></RowDefinition>
    </Grid.RowDefinitions>
    <TextBox Grid.Row="0"></TextBox>

    <TreeView Grid.Row="1"
    VirtualizingStackPanel.IsVirtualizing="True"
    VirtualizingStackPanel.VirtualizationMode="Standard"
    >
    <TreeView.Items>
    <TreeViewItem Header="Header 1" IsExpanded="True">
    <TreeViewItem.Items>
    <TreeViewItem Header="Item 1" />
    <TreeViewItem Header="Item 2" />
    <TreeViewItem Header="Item 3" />
    <TreeViewItem Header="Item 4" />
    <TreeViewItem Header="Item 5" />
    <TreeViewItem Header="Item 6" />
    <TreeViewItem Header="Item 7" />
    <TreeViewItem Header="Item 8" />
    <TreeViewItem Header="Item 9" />
    <TreeViewItem Header="Item 10" />
    <TreeViewItem Header="Item 11" />
    <TreeViewItem Header="Item 12" />
    <TreeViewItem Header="Item 13" />
    <TreeViewItem Header="Item 14" />
    <TreeViewItem Header="Item 15" />
    <TreeViewItem Header="Item 16" />
    <TreeViewItem Header="Item 17" />
    <TreeViewItem Header="Item 18" />
    <TreeViewItem Header="Item 19" />
    <TreeViewItem Header="Item 20" />
    <TreeViewItem Header="Item 21" />
    <TreeViewItem Header="Item 22" />
    <TreeViewItem Header="Item 23" />
    <TreeViewItem Header="Item 24" />
    <TreeViewItem Header="Item 25" />
    <TreeViewItem Header="Item 26" />
    <TreeViewItem Header="Item 27" />
    <TreeViewItem Header="Item 28" />
    <TreeViewItem Header="Item 29" />
    <TreeViewItem Header="Item 30" />
    </TreeViewItem.Items>
    </TreeViewItem>
    </TreeView.Items>
    </TreeView>
    </Grid>
    </Window>

    任何帮助将不胜感激!!!

    最佳答案

    好吧,它看起来像一个错误并且有一个 plenty of hotfixes .您是否启用了 Windows 更新?

    关于更改焦点和滚动时,带有 IsVirtualizing ="true"的 WPF TreeView 会跳来跳去,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1930154/

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