private async void NavigateCompleted(NavigationResult result)
        {
            if (result.Uri == null)
            {
                return;
            }

            if (result.Uri.AbsoluteUri.Contains("code="))
            {
                var authCode = Regex.Split(result.Uri.AbsoluteUri, "code=")[1];

                await TryAsyncApi("Authorize",
                                  async() => await _gistClient.Authorize(authCode));

                await this.ListMyGists();

                BrowserVisible = false;
            }
        }
示例#2
0
        private async void webBrowser_Navigating(object sender, NavigatingCancelEventArgs e)
        {
            if (e.Uri.AbsoluteUri.Contains("code="))
            {
                e.Cancel = true;
                webBrowser.Visibility = Visibility.Collapsed;

                var authCode = Regex.Split(e.Uri.AbsoluteUri, "code=")[1];

                //get access token
                await gistClient.Authorize(authCode);

                ISEInterop.Config.ObjectModelRoot = HostObject;
                var gistRepo = new GistRepository(gistClient);
                viewModel        = new MainViewModel(gistRepo);
                this.DataContext = viewModel;
                await viewModel.Load();
            }
        }