При перемещении элементов между коллекциями вам также необходимо установить некоторые их свойства, чтобы обозначить изменения. ObservableCollection предоставляет событие NotifyCollectionChanged, которое вы можете использовать для этой цели. Поэтому ответом было бы установить свойство User Задачи для текущего пользователя, когда Задача входит в ListBox, который обозначает задачи текущего пользователя, и удалять его, когда оно входит в коллекцию задач.
Edit:
Другой метод, который я использовал, если коллекция обычно содержит умеренное количество элементов (какой предел я не знаю, вы должны тестировать с соответствующими тестовыми данными), состояла в том, чтобы все элементы в одной коллекции (обычно ObservableCollection были возможность динамически добавлять / удалять элементы, не беспокоясь об обновлении пользовательского интерфейса), и создавать два представления (интерфейс ICollectionView, обычно создаваемый с помощью CollectionViewSource в Silverlight, я думаю), каждое из которых имеет предикат фильтрации. Представление использует предикат, чтобы определить, принадлежит ли элемент представлению или нет; поэтому одно представление может иметь условие предиката «пользователь должен быть равен текущему пользователю», а другое - «пользователь должен быть нулевым».
Простая установка пользовательского свойства сущности в вашей коллекции (если сущность реализует INotifyPropertyChanged) автоматически приведет к перемещению сущности в соответствующем представлении. Конечно, для этого потребуется изменить часть проблемы путем перетаскивания: при перетаскивании элемента в список необходимо установить для его пользовательского свойства либо текущего пользователя, либо значение null в зависимости от цели перетаскивания, а затем все остальное берется. забота о взглядах.
Изменения все еще необходимо сохранить в базе данных - просто вызовите SubmitChanges (по крайней мере, это то, что он называется в службах RIA, я думаю ... работающий со слишком многими технологиями в данный момент), когда пользователь нажимает "ОК" или кнопка «Сохранить» или что-то еще. Измененные объекты будут сохранены, и они будут обнаружены как измененные, поскольку их пользовательское свойство было изменено.