Привязка комбинированного списка к свойству объекта не обновляет текстовое поле, привязанное к другому свойству объекта - PullRequest
0 голосов
/ 14 марта 2012

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

Здесь ViewModel:

public object Caption
    {
        get 
        {

                return TemplateEl.Caption; 
        }
        set 
        {
                TemplateEl.Caption = ((TemplateField)value).FieldCaption;
                FieldName = ((TemplateField)value).FieldName;
                RaisePropertyChanged("Caption");
        }
    }

    public string FieldName
    {
        get { return TemplateEl.FieldName; }
        set 
        {
            TemplateEl.FieldName = value;
            RaisePropertyChanged("FieldName");
        }
    }

Здесь xaml TextBoxпривязано к свойству FiledName:

<dxg:GridColumn FieldName="FieldName" Header="Field Name" HorizontalHeaderContentAlignment="Center" Name="gridColumnFieldName">
                        <dxg:GridColumn.CellTemplate>
                            <DataTemplate>
                                <editors:TextEdit Name="txtEditFieldName" Margin="5,0,0,0" VerticalAlignment="Center" IsReadOnly="{Binding 
                                    Path=Data.IsFieldNameReadOnly,Mode=OneWay}" Text="{Binding Path=Data.FieldName,Mode=TwoWay,
                                    UpdateSourceTrigger=PropertyChanged}"/>
                            </DataTemplate>
                        </dxg:GridColumn.CellTemplate>
                    </dxg:GridColumn>

У меня есть ComboBox, привязанный к свойству Caption. Когда я выбираю элемент в ComboBox, заголовок, изменяющий значение FieldName, но TextBox, привязанный к FiledName, не обновляется.Но если я выбираю тот же элемент в ComboBox во второй раз, то TextBox обновляется из свойства FiledName.

Обновление: Нашел решение, В новой версии devexpress (v2011 vol 2.8) мне нужноустановить для свойства GridControl AllowLiveDataShaping значение true.

...