protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
        {
            base.OnNavigatedTo(e);

            // Set the page's state according to the context
            if (e.NavigationMode != System.Windows.Navigation.NavigationMode.Back)
            {
                viewModel        = NavigationContext.GetData <SelectLanguagePageViewModel>();
                this.DataContext = viewModel;
            }
        }
Exemplo n.º 2
0
        protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
        {
            base.OnNavigatedTo(e);

            // Set the page's state according to the context
            if (e.NavigationMode != System.Windows.Navigation.NavigationMode.Back)
            {
                viewModel = NavigationContext.GetData<SelectLanguagePageViewModel>();
                this.DataContext = viewModel;
            }
        }
Exemplo n.º 3
0
    public static void NOPH_SelectLanguageDialog_showDialog(int languages_labels_addr, int languages_values_addr, int count, int selected_language_addr, int language_selected_callback)
    {
        // Offset the array points
        languages_labels_addr /= 4;
        languages_values_addr /= 4;

        // Convert to strings
        SelectLanguagePageViewModel viewModel = new SelectLanguagePageViewModel();
        for (int i = 0; i < count; ++i)
        {
            string label = CRunTime.charPtrToString(CRunTime.memory[languages_labels_addr + i]);
            string value = CRunTime.charPtrToString(CRunTime.memory[languages_values_addr + i]);
            viewModel.Languages.Add(label, value);
        }

        // Set the callback
        viewModel.OnLanguageSelected += (sender, args) =>
        {
            // Save the result
            CRunTime.stringToCharPtr(args.SelectedValue, selected_language_addr);

            // And call the callback
            System.Windows.Deployment.Current.Dispatcher.BeginInvoke(() =>
            {
                UIWorker.addUIEvent(language_selected_callback, selected_language_addr, 0, 0, 0, true);
            });
        };

        // And navigate to the dialog
        System.Windows.Deployment.Current.Dispatcher.BeginInvoke(() =>
        {
            var currentPage = ((App)Application.Current).RootFrame.Content as PhoneApplicationPage;
            currentPage.NavigationService.Navigate<SelectLanguagePage>(viewModel);
        });
    }