我正在使用Facebook授权的WPF客户端。我正在使用WebBrowser控件并显示facebook的登录页面,然后显示一些重定向,最后它向我显示我的页面,其中包含访问令牌。
然后我抓住这个令牌并保存它,我在我的表单上调用Close()。窗口关闭但几乎就在IE弹出一个单独的窗口显示成功页面之后。
如何阻止此新窗口弹出?
这是我的代码(其中一些)
private void WebBrowserNavigated(object sender, WebBrowserNavigatedEventArgs e)
{
string url = e.Url.ToString();
var result = Regex.Match(url, @"access_token=(?<token>[\d|\w]+)&");
if (result.Success)
{
string token = result.Groups["token"].Value;
Reader.SetAccessToken(token, SocialNetworkInformation.SocialNetwork.Facebook, url: e.Url);
this.Close();
}
}
答案 0 :(得分:0)
我解决了我的问题。不是最好的方式,但它有效。
我没有在收到回复后立即关闭表单,而是调用关闭此表单的委托方法。在0.3秒设置计时器。窗口存在足够长的时间来接收答案,但不足以让用户看到响应。