Стучал мне по голове все это утро.
По сути, у меня есть список, и я хочу, чтобы люди не могли изменить выбор во время длительного процесса, но разрешить им продолжать прокрутку.
Решение:
Все ответы были хорошими, я пошел с глотанием событий мыши, так как это было самым прямым. Я связал PreviewMouseDown и PreviewMouseUp с одним событием, которое проверило мой backgroundWorker.IsBusy и установило ли свойство IsHandled для аргументов события значение true.