Как привязать массив к шаблону данных - список - PullRequest
0 голосов
/ 06 сентября 2011

В настоящее время я анализирую HTML, чтобы создать массив, показанный ниже в списке

enter image description here

Я вывожу каждый объект в массиве в текстовое поле, вот так

//first line
flight1.Text = node[0][2];
origin1.Text = node[0][3];
status1.Text = node[0][7];
time1.Text = node[0][6];

//second line

textBlock1.Text = node[1][3];
textBlock2.Text = node[1][3];
textBlock4.Text = node[1][7];
textBlock3.Text = node[1][6];

Это результат

enter image description here

Как вы можете себе представить, это довольно изнурительная работа и, вероятно, не лучший способ сделать это.

В любом случае можно ли привязать каждый раздел в массиве, например ... все имена рейсов к списку в шаблоне данных, чтобы в нем автоматически перечислялись все время полета и все время полета и т. Д.

Что-то вроде этого для XAML

<ListBox Margin="6,6,-12,0" Name="listBox1">
                <ListBox.ItemTemplate>
                    <DataTemplate>
                        <StackPanel Margin="0,0,0,17" Width="432" Height="Auto">

                            <TextBlock Text="{Binding FlightNumber}" Foreground="#FF4BCCF5" FontSize="24" />
                            <TextBlock Text="{Binding Origin}" TextWrapping="Wrap" FontSize="22" Foreground="#FF969696" />
                            <TextBlock Text="{Binding Time}" TextWrapping="Wrap" FontSize="20" Foreground="#FF05C16C" />
                            <TextBlock Text="{Binding Status}" TextWrapping="Wrap" FontSize="20" />
                        </StackPanel>
                    </DataTemplate>
                </ListBox.ItemTemplate>
            </ListBox>

1 Ответ

0 голосов
/ 06 сентября 2011

Я не уверен, чего бы вы хотели достичь.Но в целом я бы предложил сделать следующие шаги:

  1. Разобрать HTML
  2. Поместить каждую строку в FlightInformation -Класс (со свойствами, которые есть в вашем примере XAML)
  3. Поместите все FlightInformation -объекты в ObservableCollection
  4. Примените DataTemplate к вашему ItemsControl
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...