Редактировать: Теперь, когда вы разместили свой код, я настроил шаблон.Кстати, вы ошиблись в «Вылетах», в нем отсутствует «r».
Образцы данных, которые я использую:
List<BusStop> data = new List<BusStop>();
BusStop busStop1 = new BusStop("Some Stop", "123");
busStop1.Depatures.Add(new Depature("Nils Eriksson Term", 5, 15));
busStop1.Depatures.Add(new Depature("Nils Eriksson Term", 5, 15));
busStop1.Depatures.Add(new Depature("Nils Eriksson Term", 5, 15));
busStop1.Depatures.Add(new Depature("Nils Eriksson Term", 5, 15));
BusStop busStop2 = new BusStop("Other Stop", "42");
busStop2.Depatures.Add(new Depature("Nils Eriksson Term", 5, 15));
busStop2.Depatures.Add(new Depature("Nils Eriksson Term", 5, 15));
busStop2.Depatures.Add(new Depature("Nils Eriksson Term", 5, 15));
busStop2.Depatures.Add(new Depature("Nils Eriksson Term", 5, 15));
BusStop busStop3 = new BusStop("Not A Stop", "0");
busStop3.Depatures.Add(new Depature("Void", 5, 15));
busStop3.Depatures.Add(new Depature("Void", 5, 15));
busStop3.Depatures.Add(new Depature("Void", 5, 15));
busStop3.Depatures.Add(new Depature("Void", 5, 15));
data.Add(busStop1);
data.Add(busStop2);
data.Add(busStop3);
Data = data;
Общий подход должен заключаться в определении вложенных DataTemplates
, здесь яиспользуйте ItemsControl
, чей ItemTemplate
содержит заголовки, а другой ItemsControl
:
<ItemsControl ItemsSource="{Binding Data}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<StackPanel>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="38" />
<ColumnDefinition Width="280" />
<ColumnDefinition Width="46" />
<ColumnDefinition Width="46" />
</Grid.ColumnDefinitions>
<Grid.Children>
<TextBlock Grid.Column="0" Grid.ColumnSpan="2" Text="{Binding Name}" FontSize="32" Foreground="#FFE37306"/>
<TextBlock Grid.Column="2" VerticalAlignment="Bottom" FontSize="12" Text="avgår"/>
<TextBlock Grid.Column="3" VerticalAlignment="Bottom" FontSize="12" Text="nästa"/>
</Grid.Children>
</Grid>
<ItemsControl ItemsSource="{Binding Depatures}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="38" />
<ColumnDefinition Width="280" />
<ColumnDefinition Width="46" />
<ColumnDefinition Width="46" />
</Grid.ColumnDefinitions>
<Grid.Children>
<Grid Grid.Column="0" Style="{StaticResource VasttrafikGridLine}" Background="#0D4774">
<TextBlock Grid.Column="0" Text="80" Style="{StaticResource VasttrafikTextLine}"/>
</Grid>
<TextBlock Grid.Column="1" Text="{Binding Destination}" Foreground="DarkBlue"/>
<TextBlock Grid.Column="2" Text="{Binding Next}" HorizontalAlignment="Left" Width="20" Foreground="DarkBlue"/>
<TextBlock Grid.Column="3" Text="{Binding NextNext}" HorizontalAlignment="Left" Width="20" Foreground="DarkBlue"/>
</Grid.Children>
</Grid>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</StackPanel>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
выглядит примерно так (в нем, конечно, отсутствуют ваши конкретные стили и переопределения): A Picture http://i54.tinypic.com/v8cwmd.png
Вы по-прежнему не указали, откуда берутся ваши три разных блока и т. Д., Но все, что за этим, безусловно, является вашей проблемой ...