Красная граница не является ошибкой привязки (в смысле ошибок привязки, найденных в поле «Вывод VS»), это ошибка проверки.
Привязки автоматически проверяют, является ли новое значение приемлемым для типа источника привязки (в данном случае KeyValuePair
). Не выбранное значение будет означать null
как выбранное значение, что недопустимо для KeyValuePair
- это структура, которая является типом значения, поэтому не может иметь значение null
. Таким образом, проверка не пройдена, и значение не загружено в источник.
Создание типа nullable (KeyValuePair<Bumpstop, BumpStopOptions>?
) исправит это, но может иметь последствия для вашего другого кода, поэтому тщательно обдумайте это (возможно, вам придется добавлять проверки недействительности везде, где используется свойство ).