【发布时间】:2017-07-12 13:16:27
【问题描述】:
我正在尝试获得具有多项选择的TreeView。我必须以编程方式构建TreeView(我假设),因为我从Database 获取数据。
我的问题是 shown here as I can't embed pictures yet.
程序在情况 A 中按预期工作,我将鼠标悬停在 TreeView 上 - 我可以上下滚动。
然而,在情况 B 中这是不可能的,我将鼠标悬停在 ListBox 上。
示例的 XAML 如下:
<Window x:Class="WPF_test_1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="150" Width="230">
<Grid>
<TreeView x:Name="treeView" Margin="10,10,10,9.8"/>
</Grid>
</Window>
还有 C#:
using System.Windows;
using System.Windows.Controls;
namespace WPF_test_1
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
ListBox lb = new ListBox();
lb.Items.Add("Test with a long name");
lb.Items.Add("Test");
lb.Items.Add("Test");
lb.Items.Add("Test");
lb.Items.Add("Test");
lb.Items.Add("Test");
lb.SelectionMode = SelectionMode.Extended;
lb.BorderThickness = new Thickness(0);
TreeViewItem lv = new TreeViewItem();
lv.Header = "TEST";
lv.Items.Add(lb);
treeView.Items.Add(lv);
}
}
}
我选择将ListBox 添加到TreeViewItem,因为这样可以启用多项选择,而无需对TreeView 实施扩展 - 但正如我所说,它不允许我正确滚动。
有谁知道解决方法,或者问题可能是什么?
提前谢谢你。
【问题讨论】: