Wpf обязательный вопрос - PullRequest
       2

Wpf обязательный вопрос

2 голосов
/ 18 августа 2010

Это мой XAML-код Listview:

<ListView ItemsSource="{Binding Items}" Margin="0" Grid.Row="1" >
            <ListView.View>
                <GridView>
               <GridViewColumn
                    Header="OperatorId"
                    DisplayMemberBinding="{Binding OperatorId}"  x:Name="operatorIdColumn"/>
                <GridViewColumn
                    Header="OperatorValue" x:Name="operatorValueColumn"
                    DisplayMemberBinding="{Binding Row.OperatorRow.Value}"  /> 
            </GridView>
            </ListView.View>
        </ListView>

Как сделать так, чтобы оператор operatorValueColumn обновлялся при изменении значения operatorIdColumn ?. Другими словами, как я могу это сделать при изменении OperatorId? INotifyPropertyChanged был реализован в объекте, к которому привязан ListView.

Edit: Представление «Список» связано с таблицей данных TypedDataSet. «Row.OperatorRow.Value» в основном подключается к родительской таблице (операторы), чтобы получить фактическое значение. Когда я пытаюсь изменить OperatorId, operatorIdColumn обновляет отображение нового Id, но operatorValueColumn не обновляет себя до нового значения оператора.

Если я смогу принудительно обновить привязку оператора operatorValueColumn на основе изменения operatorId, я получу новое значение. Это может быть взломом, но все же я хочу знать, как это сделать, если это возможно.

Это для тестового пользовательского контроля, который будет использоваться для быстрой проверки локальных значений структуры данных. Так что шаблоны не важны.

Ответы [ 2 ]

0 голосов
/ 26 августа 2010

Простое решение состоит в том, чтобы использовать мульти-привязку и привязать себя к обоим столбцам. В мульти-конвертере всегда возвращайте тот, который вы хотите представить.

0 голосов
/ 19 августа 2010

SKG, попробуйте связать метод с передачей в OperatorId, который выплевывает соответствующее Row.OperatorRow.Value для этого OperatorID ...

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