private async Task EditWhiteListAsync(string text, CancellationToken token)
        {
            MessageTextBox.Text = string.Join(Environment.NewLine, _whiteList);

            while (!token.IsCancellationRequested)
            {
                var whiteList = MessageTextBox.Text
                                .Split(new[] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries).ToList();
                var current = QQChat.Find().FirstOrDefault();
                if (current is null)
                {
                    await Task.Delay(200);
                }
                else if (whiteList.Find(x => x == current.Name) == null)
                {
                    whiteList.Add(current.Name);
                    MessageTextBox.Text = string.Join(Environment.NewLine, whiteList);
                    await Task.Delay(200, token);
                }
                else
                {
                    await Task.Delay(200);
                }
            }

            _whiteList.Clear();
            _whiteList.AddRange(MessageTextBox.Text.Split(new[] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries));
            DefaultConfiguration.FromFile("configs.txt")["WhiteList"] = string.Join("\n", _whiteList);
            MessageTextBox.Text = "";
        }
        private async Task MultipleSendAsync(string text, CancellationToken token)
        {
            var sentChats = new List <string>();

            while (!token.IsCancellationRequested)
            {
                var current = QQChat.Find().FirstOrDefault();
                if (current is null)
                {
                    await Task.Delay(200);
                }
                else if (sentChats.Find(x => x == current.Name) == null &&
                         (_whiteList.Count == 0 || _whiteList.Contains(current.Name)))
                {
                    sentChats.Add(current.Name);
                    CurrentSendingRun.Text = current.Name;
                    HasSentRun.Text        = (int.Parse(HasSentRun.Text) + 1).ToString();
                    ToSendRun.Text         = (int.Parse(ToSendRun.Text) + 1).ToString();
                    await current.SendMessageAsync(text);
                }
                else
                {
                    await Task.Delay(200);
                }
            }
        }
        private void OnLoaded(object sender, RoutedEventArgs e)
        {
            _current = QQChat.Find().FirstOrDefault();
            GroupNameTextBlock.Text = _current?.Name;

            var whiteList = DefaultConfiguration.FromFile("configs.txt")["WhiteList"].ToString()
                            .Split(new[] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries);

            _whiteList.AddRange(whiteList);
        }