private void RefreshTasks() { LOGGER.Info($"User attempts to load tasks from the service"); FoundTasks.Clear(); long[] ids = new string(filterIdTextbox.Text.Replace(',', ';').Where(c => ";0123456789".Contains(c)).ToArray()) .Split(';') .Where(c => !string.IsNullOrEmpty(c)) .Select(c => Convert.ToInt64(c)) .ToArray(); int?attemptCount = null; int?minAttemptCount = null; int?maxAttemptCount = null; List <TaskState> states = new List <TaskState>(); if (showOpenTasksCheckbox.Checked) { states.Add(TaskState.Open); } if (showDoneTasksCheckbox.Checked) { states.Add(TaskState.Done); } if (showFailedTasksCheckbox.Checked) { states.Add(TaskState.Failed); } FoundTasks.AddRange(TaskClient.GetTasks(Accounts[accountsListView.SelectedIndices[0]].id, ids, filterTaskdateAfterDtp.Value, filterTaskdateBeforeDtp.Value, attemptCount, minAttemptCount, maxAttemptCount, filterPlaylistIdTextbox.Text, filterPlaylistTitleTextbox.Text, filterVideoIdTextbox.Text, filterVideoTitleTextbox.Text, states.ToArray(), (TaskOrder)sortByCombobox.SelectedIndex, (TaskOrderDirection)sortOrderCombobox.SelectedIndex)); LOGGER.Info($"Playlistservice returned {FoundTasks.Count} tasks"); RefillTasksListView(); }