gpt4 book ai didi

c# - 我希望绑定(bind)到 WPF 列表中的列表

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

我绑定(bind)了我的ItemsSource在我的ItemsControl到一个 ViewModel 列表,称为 LDLTracks。在 LDLTrack View 模型中,有一个我希望绑定(bind)到的坐标对象列表,但是我不确定执行它的正确方法。

我可以通过将我的 Canvas 绑定(bind)到 TrackViewModels 列表然后在我的

XAML:

<ItemsControl ItemsSource="{Binding LDLTracks}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<Canvas/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>

<ItemsControl.ItemTemplate>
<DataTemplate>

<Line X1="{Binding X1}" Y1="{Binding Y1}" X2="{Binding X2}" Y2="{Binding Y2}" Stroke="{Binding LineColor}" StrokeThickness="5">
<Line.InputBindings>
<MouseBinding Gesture="LeftClick" Command="{Binding FooCommand}"/>
</Line.InputBindings>
</Line>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>

我想更换 {Binding X1}使用坐标列表,理想情况下它将是 Coordinates.X1,因为坐标将是一个列表,但是当我尝试唯一可以绑定(bind)的属性是坐标列表计数时。有任何想法吗?

最佳答案

您可以使用内部/嵌套 ItemsControl绑定(bind)到 Coordinates列表:

<ItemsControl ItemsSource="{Binding LDLTracks}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<Canvas/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<ItemsControl ItemsSource="{Binding Coordinates}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<Line X1="{Binding X1}" Y1="{Binding Y1}" X2="{Binding X2}" Y2="{Binding Y2}"
Stroke="{Binding LineColor}" StrokeThickness="5">
<Line.InputBindings>
<MouseBinding Gesture="LeftClick" Command="{Binding FooCommand}"/>
</Line.InputBindings>
</Line>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>

关于c# - 我希望绑定(bind)到 WPF 列表中的列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55829596/

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