#wpf #data-binding #autocomplete #wpftoolkit
#wpf #привязка данных #автозаполнение #wpftoolkit
Вопрос:
У меня есть объект, привязанный к элементам управления в окне. У этого объекта есть свойство, называемое «Region», и ObjectDataProvider, который заполняется списком доступных «Регионов». Я использую WPF toolkit AutoCompleteBox для выбора выбранной области, но выбранное значение не обновляется, чтобы отразить область объекта. Например: если я использую приведенный ниже код, я могу открыть / сохранить форму, и поле автозаполнения будет пустым, даже если область сохранена (значит, она должна быть привязана, но невидима?)
<input:AutoCompleteBox x:Name="txtRegionAuto" Grid.Row="0" Grid.Column="1"
IsTextCompletionEnabled="False" ValueMemberPath="Region" ItemTemplate="{StaticResource RegionDataTemplate}" Margin="2,4" Style="{StaticResource AutoCompleteComboBoxStyle}" TabIndex="8" SelectedItem="{Binding Region,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"
SelectionChanged="lstRegion_SelectionChanged"
ItemsSource="{Binding Source={StaticResource regionProvider}}" MinimumPopulateDelay="400" />
Единственный способ, которым я могу заставить регион отображаться в поле, — это с:
txtRegionAuto.SelectedItem = regions.FirstOrDefault(c => c.RegionID == region.RegionID);
Но затем, когда я захожу, чтобы сохранить форму, свойство Region в моем объекте равно нулю. Я уверен, что это просто случай установки правильной привязки значения, но я не уверен, что использовать.
Ответ №1:
я думаю, вы столкнулись с ошибкой: https://connect.microsoft.com/VisualStudio/feedback/details/595640/autocompletebox-does-not-update-visible-text