public override void Do(ActionArgs e)
        {
            Begin(e);
            ActionTwitterLoginArgs arg = e as ActionTwitterLoginArgs;

            if (precheckToDo(e))
            {
                if (!TwitterUtils.TwitterClient.isAlreadyLoggedIn())
                {
                    Deployment.Current.Dispatcher.BeginInvoke(() => {
                        LoginTwitterDialog dialog = new LoginTwitterDialog();
                        dialog.OnComplete        += dialog_OnComplete;
                        arg.ParentLayout.Children.Add(dialog.Dialog);
                        dialog.show(0, 0);
                        _waiting.Add(dialog, arg);
                    });
                }
                else
                {
                    arg.IsCancelByLogedin = true;
                    Done(arg);
                }
            }
            else
            {
                Cancel(e);
            }
        }
        public override void Do(ActionArgs e)
        {
            Begin(e);
            ActionTwitterLoginArgs arg = e as ActionTwitterLoginArgs;

            if (precheckToDo(e))
            {
                if (!TwitterUtils.TwitterClient.isAlreadyLoggedIn())
                {
                    var dispatcher = ActionHelper.getCurrentUIThread();
                    dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () =>
                    {
                        LoginTwitterDialog dialog = new LoginTwitterDialog();
                        dialog.OnComplete        += dialog_OnComplete;
                        arg.ParentLayout.Children.Add(dialog.Dialog);
                        dialog.show(0, 0);
                        _waiting.Add(dialog, arg);
                    });
                }
                else
                {
                    arg.IsCancelByLogedin = true;
                    Done(arg);
                }
            }
            else
            {
                Cancel(e);
            }
        }