This Connect and Login is unnecessary.

This WhatSocket.Instance.Connect and WhatSocket.Instance.Login is unnecessary here, since these operations are already performed in the  CheckLogin() method of  frmLogin