2017-10-19 3 views
0

이것은 사소한 것이지만 대답을 찾을 수 없습니다.UWP가 페이지간에 데이터를 전달할 때

기본적으로, 나는 pagebox1 (사실 UserControl)에 텍스트 상자와 그 옆에 버튼이 있습니다. 버튼을 클릭 한 후 그리드가있는 새로운 독립형 페이지를 열고 값을 선택하여 반환해야합니다. 간단한 문자열 또는 int로 돌아가 page1.

OnNavigatedTo는이 시나리오에서 어떻게 든 사용할 수 있지만, 다른 텍스트 상자 + 버튼 (이전과 동일 - 다른 페이지에서 선택)이있는 경우 어떻게해야합니까? 어떻게 특정 UserControl

가장 좋은 해결책은 무엇입니까?

+3

이 내용을 확인하십시오. https://stackoverflow.com/questions/35304615/pass-some-parameters-between-pages-in-uwp –

답변

0

하지만 난 어떻게해야 좀 더 텍스트 상자 + 버튼을 가지고있는 경우 - PAGE1에 (이전과 같은 또 다른 페이지에서 해당) 당신이 원하는 경우에 나는 특정 UserControl을

에 방법을 탐색 할 수 있습니다 UserControl (귀하의 페이지 1)과 Grid (귀하의 페이지 2)은 두 페이지로 분리되어야합니다. 예를 들어 탐색 효과가 나타나기를 원하면 모든 데이터를 Json 문자열로 직렬화하고 OnNavigatedTo과 함께 전달할 수 있습니다. 예를 들어 모든 텍스트 데이터를 JsonObject으로 만들고 UserControl의 ID를 JsonObjects 중 하나로 지정하고 두 번째 페이지로 전달하고 데이터가 다시 올 때 UserControl의 ID를 다시 보내면 어느 UserControl이 데이터를 받을지 알고 있어야합니다.

Json 데이터를 serialize하기 위해 this sample을 참조하십시오. 페이지간에 데이터를 전달하려면 this article을 참조하십시오.

가장 좋은 해결책은 무엇입니까?

실제로 시나리오의 경우 ContentDialog이 (가) 더 적합합니다. 현재 시나리오에서 UserControl이 있고, UserControl, ContentDialog 팝업, Grid 버튼이 있습니다. 일부 작업을 수행 한 후 ContentDialog 버튼을 클릭하면 대화 상자가 닫힙니다. 반환 데이터를 가져옵니다. 이제 UserControl은 반환 데이터를 처리하기 쉽습니다. 자세한 내용은 sample을 확인하십시오.

관련 문제