Используйте значение строки запроса: -
NavigationService.Navigate(new Uri("/MainPage.xaml?value=Hello%20World", UriKind.Relative);
MainPage
может затем получить это значение, используя: -
string value = this.NavigationContext.QueryString["value"];
Редактировать
В ответ на комментарий, передавая другие типы.
Если у вас есть вышеуказанное, вы можете использовать другие сервисные шаблоны для передачи других типов. Например, рассмотрим MessageService, который реализует: -
interface IMessageService
{
Guid Store(object value)
object Retrieve(Guid key)
}
Затем вы реализуете этот интерфейс и выставляете реализацию в виде синглтона: -
public class MessageService : IMessageService
{
public static IMessageService Default { // singleton stuff here }
}
Ваш OpenPage вызывает MessageService.Default.Store
и помещает полученный Guid в строку запроса.
Затем MainPage проверяет наличие такого значения строки запроса, если присутствует, использует свое значение для вызова MessageService.Default.Retrieve
, который удаляет элемент из службы.