내 앱의 기본 탐색 기능은 목록 상자에서 항목을 선택하고 어떤 항목이 선택되었는지를 결정하고 id
값을 얻는 것으로 구성됩니다. id
값을 다음 페이지로 전달하고 웹 클라이언트에서 사용할 새로운 API를 url에 추가하여 새 데이터를 가져옵니다. 여기에 내가 가진 것이있다.WP10 페이지간에 데이터 전달하기
선택한 항목을 결정하고 보조 페이지로 이동하십시오. 내가 이전 페이지에서 URL을 얻을 OnNavigatedTo 사용할 수있는 보조 페이지에서
public void genreSelectedHandler(object sender, RoutedEventArgs e)
{
ResultGenre data = (sender as TextBlock).DataContext as ResultGenre;
ListBoxItem pressedItem = this.listGenres.ItemContainerGenerator.ContainerFromItem(data) as ListBoxItem;
if (pressedItem != null)
{
string genreID = "http://api.beatport.com/catalog/3/beatport/genre?id=" + data.id;
this.NavigationService.Navigate(new Uri("/Pages/GenrePage.xaml?genreID=" + genreID, UriKind.Relative));
}
}
,하지만 난이 웹 클라이언트에 해당 URL을 연결한다에 붙어 부분.
public GenrePage()
{
InitializeComponent();
// WebClient jsonRelease
WebClient jsonGenres = new WebClient();
Uri apiGenre = new Uri("URL from previous page goes here");
jsonGenres.DownloadStringCompleted += new DownloadStringCompletedEventHandler(jsonGenres_GetDataCompleted);
jsonGenres.DownloadStringAsync(apiGenre);
}
// Textblock data from main page
protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
{
string genreID = "";
if (NavigationContext.QueryString.TryGetValue("genreID", out genreID))
base.OnNavigatedTo(e);
}
내가 할 수있는 유일한 방법은 보조 페이지의 기존 컨트롤에 URL을 추가하는 것입니다. 내가하려는 일을 성취 할 수있는 더 좋은 방법이 있습니까? MVVM 프레임 워크를 조금 읽었습니다. 그게 더 좋은 방법일까요? 그렇다면 어떻게 작동할까요? 도와 주셔서 감사합니다.
완벽하게 작동했습니다. 감사! – nos9