получение информации из списка связывания данных для новой страницы - PullRequest
0 голосов
/ 23 июля 2011

У меня есть раздел новостей, состоящий из привязки listBox из ViewModel (включая listBox)

<controls:PanoramaItem x:Name="News" Header="News">
<!--Double line list with image placeholder and text wrapping-->
<ListBox x:Name="News_ListBox" Margin="0,0,-12,0" ItemsSource="{Binding Items}"SelectionChanged="SelectNewsItem">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal" Margin="0,0,0,17">
<!--Replace rectangle with image-->
<Rectangle Height="100" Width="100" Fill="#FFE5001b" Margin="12,0,9,0"/>
<StackPanel Width="311">                                    
<TextBlock Name="NewsTitle" Text="{Binding LineOne}" TextWrapping="Wrap" Style="{StaticResource PhoneTextExtraLargeStyle}"/>
<TextBlock Name="NewsDetail" Text="{Binding LineTwo}" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{StaticResource PhoneTextSubtleStyle}"/>
</StackPanel>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</controls:PanoramaItem>

Я хочу сделать это, когда кто-то щелкает элемент новостей, он переносит его на новую страницупросмотреть полную информацию.Я провел событие selectionChanged, но не знаю, как получить информацию о новостях из привязки?

Плз, помогите мне.Спасибо,

1 Ответ

2 голосов
/ 23 июля 2011

типичный обработчик SelectionChanged для этих случаев должен выглядеть так:

private void lstItems_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
    if (lstItems.SelectedIndex == -1) return;

    var item = lstItems.SelectedItem as MyClass;
    // do navigation here

    lstItems.SelectedIndex = -1;
}

Это часть шаблона DataBound в Visual Studio для WP7.

...