private void Publish() { if (_isPublishing) { return; } _isPublishing = true; UpdateState(); var parameters = PrepareParameters(); var request = new VKRequest(parameters); request.Dispatch <object>( (res) => { if (res.ResultCode == VKResultCode.Succeeded) { VKExecute.ExecuteOnUIThread(() => { NavigationService.GoBack(); _isPublishing = false; UpdateState(); }); } else { VKExecute.ExecuteOnUIThread(() => { MessageBox.Show(Localization.Resources.Error); _isPublishing = false; UpdateState(); }); } }); }