Linq-to-sql Нулевое значение не отображается в выпадающем списке, привязанном к FK - PullRequest
0 голосов
/ 13 февраля 2012

У меня есть поле со списком, которое привязано к объекту FK (объект, а не поле ID).Поле со списком заполнено Linq-query-ToList ().DisplayMember установлен, ValueMember пуст.Свойство SelectedItem используется для привязки.Это все работает нормально, за исключением того, что FK пуст / ноль, первый элемент в выпадающем списке выбран, в то время как если я проверяю объект Linq, я вижу, что FK нулевой.В этом случае я хочу, чтобы выбранный элемент комбинированного списка также был нулевым.Я что-то пропустил?

1 Ответ

0 голосов
/ 17 февраля 2012

Кажется, что это работает:

Взято из http://social.msdn.microsoft.com/Forums/en-US/winformsdatacontrols/thread/a530f011-54d9-44d1-a585-145ea28ff370/

"Я протестировал это решение, но это не поможет, если вы привязываетесь к пользовательскому объекту и устанавливаете свойство объекта (который привязан к списку) к нулевому значению. Примечание: я привязываю свойство SelectedItem

мое решение состоит в том, чтобы получить комбобокс и заставить SelectedItem действовать правильно "

class MyComboBox : ComboBox
{
    public new object SelectedItem
    {
        get
        {
            return base.SelectedItem;
        }
        set
        {
            base.SelectedItem = value;
            if (value == null || value == System.DBNull.Value)
            {
                this.SelectedIndex = -1;
            }
        }
    }
}
...