gpt4 book ai didi

WPF:组合框中的 TreeView

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

我正在尝试将 TreeView 放在 WPF 中的 ComboBox 中,这样当组合框被删除时,用户将获得一个分层列表,而不是平面列表,并且他们选择的任何节点都将成为 ComboBox 的选定值。

我已经搜索了相当多的方法来实现这一点,但我能找到的最好的只是一些潜在的解决方案,因为我对 WPF 非常陌生,所以我无法工作。

我对 WPF 和数据绑定(bind)有足够的了解,可以将数据放入 TreeView 中,甚至可以在组合框中获得 TreeView ,但是我能够完成的操作根本无法正常运行。我附上了一个截图来说明我的意思。在屏幕截图中,组合框是“打开的”,所以底部的 TreeView 是我可以选择一个节点的地方,而“顶部”的 TreeView 被绘制在组合框的顶部,我想要所选节点的文本/值在要显示的树中。

基本上我不知道该怎么做是如何让 TreeView 的当前选定节点将其值返回给组合框,然后将其用作其选定值?

这是我目前正在使用的 xaml 代码:

        <ComboBox Grid.Row="0" Grid.Column="1"  VerticalAlignment="Top">
<ComboBoxItem>
<TreeView ItemsSource="{Binding Children}" x:Name="TheTree">
<TreeView.Resources>
<HierarchicalDataTemplate DataType="{x:Type Core:LookupGroupItem}" ItemsSource="{Binding Children}">
<TextBlock Text="{Binding Path=Display}"/>
</HierarchicalDataTemplate>
</TreeView.Resources>
</TreeView>
</ComboBoxItem>
</ComboBox>

截图: TreeView

最佳答案

对于那些仍然需要这种控制的人,我已经实现了我的 Silverlight control 的 WPF 版本。 .它只适用于 View 模型,并且需要这些 View 模型实现一个特殊的接口(interface),但除此之外它并不难使用。

在 WPF 中,它看起来像这样:

WPF Combobox with TreeView

您可以从这里下载源代码和示例应用程序:WpfComboboxTreeview.zip

关于WPF:组合框中的 TreeView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/722700/

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