Я создаю приложение для Windows Phone 7. У меня есть страница панорамы с моделью представления - список пунктов главного меню.Я не могу понять, как привязать эти клики к данным или создать ссылку на другие страницы.(Т. Е. Каждый из этих пунктов меню должен быть похожим на ссылку на другую страницу). То, что я пробовал, - это присвоение события click тексту {binding Link} в моем главном списке элементов viewmodel.cs.Каждый элемент «Ссылка» был обработчиком события в соответствии с кодом, показанным ниже в файле cs.Это не работает так интересно, как этого добиться.В приведенном ниже примере файла xaml все текстовые ссылки в списке идут на одно и то же событие: «TextBlock_MouseLeftButtonDown_Wales».но, конечно, я хочу, чтобы они заходили на каждую свою страницу.
MainPage.xaml
<ListBox Margin="0,0,-12,0" ItemsSource="{Binding Items}" Background="#75000000">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal" Margin="0,0,0,10">
<!--Replace rectangle with image-->
<!-- <Rectangle Height="100" Width="100" Fill="#FFE5001b" Margin="12,0,9,0"/> -->
<Image Source="/images/image1.png" Height="70" HorizontalAlignment="Left" Margin="0,0,0,0" Name="image1" Stretch="Fill" VerticalAlignment="Top" Width="77" Opacity="1" OpacityMask="#C8000000" />
<StackPanel Width="311">
<TextBlock Text="{Binding LineOne}" MouseLeftButtonDown="TextBlock_MouseLeftButtonDown_Wales" TextWrapping="Wrap" Style="{StaticResource PhoneTextExtraLargeStyle}"/>
<TextBlock Text="{Binding LineTwo}" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{StaticResource PhoneTextSubtleStyle}"/>
</StackPanel>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
MainViewModel.cs
this.Items.Add(new ItemViewModel() { LineOne = "England", LineTwo = "blahblah", Link = "TextBlock_MouseLeftButtonDown_London" });
this.Items.Add(new ItemViewModel() { LineOne = "Scotland", LineTwo = "blahblah ", Link = "TextBlock_MouseLeftButtonDown_London" });
this.Items.Add(new ItemViewModel() { LineOne = "Wales", LineTwo = "blahblah ", Link = "TextBlock_MouseLeftButtonDown_Wales" });
this.Items.Add(new ItemViewModel() { LineOne = "London", LineTwo = "blablbah ", Link = "TextBlock_MouseLeftButtonDown_London" });
Я надеюсь, вы понимаете, чтоЯ собираюсь сделать здесь, дайте мне знать, если вам нужно больше информации.Большое спасибо.Dan