Связывание WPF ComboBox неизменяемое - PullRequest
0 голосов
/ 10 марта 2009

Я пытаюсь привязать ComboBox к данным из объекта. Объект содержит список разрешенных состояний и строку, представляющую его текущее значение. Проблема, с которой я сталкиваюсь, заключается в том, что, когда форма загружается, она правильно устанавливает значение поля со списком в его текущее значение, но я не могу изменить значение на что-либо еще. Если я щелкну раскрывающийся список и выберу новое значение, он закроет раскрывающийся список, но сохранит исходное значение.

Каждый комбинированный список находится в строке DataGrid, а ComboBox содержится в шаблоне RowDetailsTemplate для DataGrid.

XAML:

<ComboBox
   x:Name="cmbStatus"
   ItemsSource="{Binding Path=AllowedStateValues}"
   SelectedItem="{Binding Path=State}"    
   Height="20"
   Width="100" />

Ответы [ 3 ]

1 голос
/ 10 марта 2009

Попробуйте установить привязку Режим на Двусторонний . Если это не работает, используйте свойство PresentationTraceSources.TraceLevel для Высокий , чтобы получить полную информацию.

0 голосов
/ 31 июля 2009

У меня просто была такая же проблема. Оказывается, моя проблема заключалась в переопределении равных элементов. Проверьте и убедитесь, что несколько объектов, которые не равны, не сравниваются как равные.

0 голосов
/ 10 марта 2009

Государственная декларация:

private string _state;
    public string State { 
        get { return _state; }
        set
        {
            if (AllowedStateValues != null && AllowedStateValues.Contains(value))
            {
                _state = value;

            }
        }

    }

У меня нет события, вызываемого при его изменении, но также кажется, что оно не вызывает установщик при изменении комбинированного списка

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...