public void InformUser(UserInteractionInformation userInform) { if (UserInformationReceived == null) { _informationQueue.Enqueue(userInform); return; } UserInformationReceived?.Invoke(this, new UserInformationEventArgs(userInform)); }
private void _formMain_Shown(object sender, EventArgs e) { IsInitialized = true; if (UserInformationReceived != null && _informationQueue.Any()) { while (_informationQueue.Any()) { var infoItem = _informationQueue.Dequeue(); UserInformationReceived.Invoke(this, new UserInformationEventArgs(infoItem)); } } if (UserQuestionReceived != null && _questionQueue.Any()) { while (_questionQueue.Any()) { var questionItem = _questionQueue.Dequeue(); UserQuestionReceived.Invoke(this, new UserQuestionEventArgs(questionItem)); } } }