2
검색 가능한 콤보 박스를 갖고 싶습니다. 항목에 입력하면 항목 목록이 필터링됩니다. OnTextChanged는 아주 잘합니다. 두 번째 부분은 comboboxlist 안에 모든 항목이 짧은 설명과 함께 표시되지만 항목을 선택하면 키가 표시되기를 원합니다. SelectionChanged에서 그렇게해야하지만, 항목을 선택할 때마다 콤보 상자 입력란을 ""으로 덮어 씁니다.선택 후 WPF Combobox가 텍스트를 잃습니다.
private void OnTextChanged(object sender, TextChangedEventArgs e)
{
ItemSource = new ObservableCollection<RoleKeyElementVM>(DataSource.Where(x => x.ShortDescription.Contains(RoleKeyCombobox.Text) || x.Key.ToString() == RoleKeyCombobox.Text));
RoleKeyCombobox.ItemsSource = ItemSource;
}
private void OnSelectionChanged(object sender, EventArgs e)
{
RoleKeyElementVM SelectedItem = RoleKeyCombobox.SelectedItem as RoleKeyElementVM;
if(SelectedItem != null)
RoleKeyCombobox.Text = SelectedItem.Key.ToString();
}
이
같은 필터링을하는 방법이 ""내 사용자 정의 텍스트를 덮어에서 콤보 상자를 방지 할 수 있습니까?
업데이트 :
은 우리가 얘기하는 콤보:
<ComboBox
Name="RoleKeyCombobox"
Margin="5" Grid.Column="2" Grid.Row="0"
IsEditable="True"
IsSynchronizedWithCurrentItem="False"
TextBoxBase.TextChanged="OnTextChanged"
SelectionChanged="OnSelectionChanged">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding ShortDescription}"/>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
자세한 정보가 필요합니다. xaml 선언 및 사용자 정의 스타일이있는 경우 첨부하십시오. – Mikolaytis
단일 텍스트 입력 필드에 약간의 정보를 압축하려고합니다 ... 키/검색 텍스트를 상자에 넣어야하는 정확한 상태를 설명 할 수 있습니까? – grek40