2012-02-13 4 views
-2

저는이 초심자 이기에 심플하게하려고 노력할 것입니다.페이지간에 이동하고 데이터를 전달하려면 어떻게해야합니까?

다른 xaml 페이지로 연결되는 버튼 클릭 이벤트가있는 xaml 페이지가 있습니다. 내가 뭘 하려는지 click 이벤트에 두 개의 문자열을 받아 두 번째 페이지의 텍스트 상자에 전달합니다. 이 작업을 수행하는 방법에 대한 간단한 코드 예제를 보여 주시겠습니까? 다음

행선지 페이지에서
private void button1_Click(object sender, RoutedEventArgs e) 
    { 
     string urlWIthData = string.Format("/Page2.xaml?name={0}", txtName.Text); 
     this.NavigationService.Navigate(new Uri(urlWIthData, UriKind.Relative)); 
    } 

같이 할 첫 번째 페이지의 버튼 클릭 이벤트에

+0

, 두 번째 페이지를 만들어 SetValue라는 메서드를 노출하고 첫 번째 페이지에서 해당 메서드로 문자열을 전달합니다. Page2.SetValue에서 메서드의 매개 변수로받은 값을 적절한 TextBox에 할당합니다. 이런 식으로 어떤 페이지가 다른 페이지에서 어떤 컨트롤을 사용할 수 있는지 알지 못합니다. 그리고 이것은 정확하고 잘 분리되어 있으므로 텍스트 상자에서 레이블로 변경하면 컨트롤이있는 부분을 변경하는 것 외에는 아무 것도 없습니다 ... –

+0

[ xaml 페이지에서 다른 페이지로 개체를 전달하는 방법?] (http://stackoverflow.com/questions/4302212/how-to-pass-an-object-from-a-xaml-page-to-another) –

답변

4

, 다음을 수행하십시오

private void PhoneApplicationPage_Loaded(object sender, RoutedEventArgs e) 
{ 
    myTextBox.Text = this.NavigationContext.QueryString["name"].ToString(); 
} 
이 경우의 개념은 간단하다
관련 문제