Как получить значение из отредактированного TextBox до выбора элемента ListBox? - PullRequest
0 голосов
/ 23 марта 2012

У меня есть приложение Silverlight с формулой. Формуляр имеет TextBox и ListBox.

<TextBox Text="{Binding Value, Mode=TwoWay}/>
<ListBox ItemsSource="{Binding Items}" SelectedItem="{Binding SelectedItem, Mode=TwoWay}">
</ListBox>

Я фокусирую TextBox и что-то пишу в него. После этого я выбираю элемент в ListBox. Кажется, что ViewModel устанавливает «SelectedItem» ДО «Value». Зачем? Как я могу исправить заказ? Я имею в виду, что мне нужно обработать TextBox перед ListBox.

Спасибо

Ответы [ 3 ]

0 голосов
/ 23 марта 2012

Вы можете обновить привязку свойства TextBox Text к событию TextChanged, а не LostFocus, как сейчас. Здесь - образец.

0 голосов
/ 24 марта 2012

TextboxBinding по умолчанию обновляется в LostFocus, попробуйте изменить привязку на это:

<TextBox Text="{Binding Value, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}/> 
<ListBox ItemsSource="{Binding Items}" SelectedItem="{Binding SelectedItem, Mode=TwoWay}"> 
</ListBox> 
0 голосов
/ 23 марта 2012

К сожалению, это похоже на ошибку.Тот же пример на WPF приведет к установке TextBox перед ListBox.Вам нужно будет найти другой способ сделать то, что вы хотите, немного изменив логику того, как вы работаете с интерфейсом.

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