private async void authdg_LoginCompleted(OAuthLoginAssistant sender) { buttonLogin.Enabled = false; buttonLogin.Text = "Authorized, Profile ID: " + m_vk.UserPage; groupBoxAudios.Enabled = true; sender.WebLoginForm.Hide(); await RefreshPlaylist(); sender.WebLoginForm.Close(); }
private void buttonLogin_Click(object sender, EventArgs e) { var authdg = new OAuthLoginAssistant(m_vk, VK.SecurityFlag.Audios); authdg.LoginCompleted += authdg_LoginCompleted; authdg.LoginFailed += authdg_LoginFailed; authdg.CreateForm(VK.OAuthLoginDisplay.mobile, true); authdg.WebLoginForm.Size = new Size(500, 350); authdg.WebLoginForm.ShowDialog(); }
private void buttonLogin_Click(object sender, EventArgs e) { // Ensure not authorized already if (MyVK.IsAuthorized && !MyVK.Token.HasExpired) { MessageBox.Show("Already authorized session!"); return; } // Initialize OAuth login assistant class for out VKSession instance with options OAuthLoginAssistant oAuthLogin = new OAuthLoginAssistant( authSession: MyVK, securityScope: this.SecurityScope); // Intialize login dialog form with WebBrowser for user oAuthLogin.CreateForm( display: VK.OAuthLoginDisplay.popup, revokePermissions: true); // LoginCompleted event handler oAuthLogin.LoginCompleted += ( (OAuthLoginAssistant _sender) => MessageBox.Show("Authorization done!", "VK9") ); // LoginFailed event handler oAuthLogin.LoginFailed += ( (OAuthLoginAssistant _sender, string _error, string _reason, string _description) => MessageBox.Show(string.Format("Error: {1}{0}Reason: {2}{0}Description: {3}", _error, _reason, _description), "Login failed") ); // Show the dialog in modal state oAuthLogin.WebLoginForm.ShowDialog(); // Dispose of resources // Timer is needed to fix WebBrowser control bugfix (call just Dispose() without UI delay and see bug in action) var bugged = new System.Timers.Timer(500) { AutoReset = false }; bugged.Elapsed += (object _sender, ElapsedEventArgs _e) => oAuthLogin.Dispose(); bugged.Start(); }
private void authdg_LoginFailed(OAuthLoginAssistant sender, string error, string reason, string description) { sender.WebLoginForm.Hide(); sender.WebLoginForm.Close(); MessageBox.Show(string.Format("Login failed. Try again!{0}error: {1}{0}reason: {2}{0}{3}", Environment.NewLine, error, reason, description), "Login failed", MessageBoxButtons.OK, MessageBoxIcon.Stop); }