gpt4 book ai didi

WPF TreeView 多个项目源

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

我想使用 wpf TreeView 显示以下内容:

TreeView structure

我的对象不同,没有基类或接口(interface),我必须为每个项目定义一个 HierarchicalDataTemplate,例如 STOP,我可以只添加一个 ItemSource“Deliveries”,但我也想为此站点添加拾取器。

<!-- DELIVERY-->
<DataTemplate x:Key="DeliveryDataTemplate">
<StackPanel Orientation="Horizontal">
<TextBlock Text="DeliveryId" Margin="3,3" />
<TextBlock Text="{Binding DeliveryStatus}" VerticalAlignment="Center" Margin="5" />
<TextBlock Background="{Binding StopStatus, Converter={StaticResource StatusConverter}}" Width="16" Height="16" />
</StackPanel>
</DataTemplate>

<!-- STOP -->
<HierarchicalDataTemplate x:Key="StopTemplate"
ItemsSource="{Binding Deliveries}"
ItemTemplate="{StaticResource DeliveryTemplate}">
<StackPanel Orientation="Horizontal">
<TextBlock Text="Stop" Margin="3,3" />
<TextBlock Text="{Binding StopId}" Margin="3,3" />
<TextBlock Background="{Binding StopStatus, Converter={StaticResource StatusConverter}}" Width="16" Height="16" Margin="3,3" />
</StackPanel>
</HierarchicalDataTemplate>

<!-- ROUTE -->
<HierarchicalDataTemplate x:Key="RouteTemplate"
ItemsSource="{Binding Stops}"
ItemTemplate="{StaticResource StopTemplate}">
<StackPanel Orientation="Horizontal">
<TextBlock Text="Route" Margin="5,5" />
<TextBlock Text="{Binding RouteId}" Margin="5,5" />
<TextBlock Background="{Binding RouteStatus, Converter={StaticResource StatusConverter}}" Width="16" Height="16" Margin="5,5" />
</StackPanel>
</HierarchicalDataTemplate>

我有一系列路线,每个路线都有停靠点,每个停靠点都有交货和取货,每个交货都有自己的元素,每个元素都有自己的元素等等......如何解决这个问题?

最佳答案

这听起来像是一个异构数据源问题。我认为这是 solution可能是您正在寻找的。

关于WPF TreeView 多个项目源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14720842/

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