Основная проблема заключается в том, что в конечном итоге вы можете использовать словарные ключи в качестве источника данных, но у вас нет способа уведомить источник данных о том, что вы добавили или удалили элементы из словаря.
Это потому, что в словаре нет для этого события уведомления, поэтому источник данных не знает, как и когда изменился ваш словарь.Элементы, которые уже присутствуют в вашем списке, отражают свои изменения просто потому, что DataSource содержит ссылку на них, и поэтому, когда они изменяются, изменения видны везде, где есть ссылка.
Для запуска изменения вВаш словарь, насколько я знаю, у вас не так много вариантов:
оба они не являются легкими решениями, поэтому, если ваши сущности относительно простые, вы можете рассмотреть некоторые альтернативы, такие как DataTables , которые могут содержать сложный ключ и другие структурированные данные.