Вы можете использовать ListBox
, чтобы сделать это следующим образом:
<ListBox ItemsSource="{Binding Items}"
SelectionChanged="OnListSelectionChanged">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<Image Source="{Binding ImageSource}" />
<TextBlock Text="{Binding ItemName}" />
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
При этом отобразится список или таблица с изображением и текстом в строке. Ваша модель представления должна объявить некоторую коллекцию Item
объектов (List<Items>
, если она статическая, или ObservableCollection<Items>
, если что-то можно добавлять / удалять). Каждый Item
должен иметь как минимум 2 открытых свойства: ImageSource
(строка, содержащая путь к изображению) & ItemName
(строка, содержащая описание).
В обработчике OnListSelectionChanged
сделайте это
var item = (sender as ListBox).SelectedItem as Item;
// you can now access item.ItemName or item.ImageSource or other properties of Item
Привязка данных - обширная тема, и вы должны узнать о ней больше, прежде чем пытаться написать приложение. Вот статья MSDN , в которой рассматриваются основы.
Специально для разработки под Windows Phone я рекомендую скачать бесплатную книгу Чарльза Петцольда и прочитать ее.