В моем приложении я создаю свой собственный медиаплеер. Когда пользователь выбирает песню для воспроизведения, которая хочет передать ссылку на образец носителя и связанные с ним метаданные (Artist, Track, Album Art и т. Д.). Часть, на которую я застрял, - это объединение всех данных и передать их на страницу медиаплеера. Вот что я до сих пор.WP7 передаёт несколько фрагментов данных между страницами
Определите, какой элемент был выбран, и добавьте данные в строку запроса.
ОБНОВЛЕНО
public void musicSampleSelectedHandler(object sender, RoutedEventArgs e)
{
Track selected = (sender as Image).DataContext as Track;
ListBoxItem pressedItem = this.listReleaseMain.ItemContainerGenerator.ContainerFromItem(selected) as ListBoxItem;
if (pressedItem != null)
{
string _rT = selected.title;
string _rN = selected.release.name;
//string _rA = selected.artists; ????
string _rI = selected.images.large.url;
string _rS = selected.sampleUrl;
this.NavigationService.Navigate(new Uri("/Pages/MediaPage.xaml?releaseName=" + _rN + "&releaseTrack=" + _rT + "&releaseImage=" + _rI
+ "&releaseSample=" + _rS, UriKind.Relative));
}
}
OnNavigatedTo метод для извлечения данных из строки запроса
protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
{
base.OnNavigatedTo(e);
string releaseName = String.Empty;
string releaseImg = String.Empty;
string releaseUrl = String.Empty;
if (NavigationContext.QueryString.TryGetValue("releaseUrl", out releaseUrl))
{
sampleMedia.Source = new Uri(releaseUrl, UriKind.Absolute);
}
}
Я не уверен, если я могу использовать жало запроса передать несколько штук в средствах массовой информации плеер, или если я сделаю что-то другое, чтобы передать данные на другую страницу. Все мои данные поступают из Интернета с помощью веб-клиента. Спасибо за помощь.
Кроме того, вы можете найти в документации по MSDN (HTTP: // msdn.microsoft.com/en-us/library/system.windows.navigation.navigationcontext.querystring(v=vs.95).aspx). – nithins
Это сработало. Большое спасибо! – nos9
Еще один вопрос, если вы не возражаете. Я забыл, что «Художники» - это коллекция в классе «Треки». Как мне получить эти данные, чтобы я мог передать его на следующую страницу, особенно если есть более одного художника? см. мой обновленный код выше. спасибо – nos9