Добавьте строку с полями поиска в сетку данных UWP

#c# #xaml #uwp

Вопрос:

Можно ли добавить строку с полем поиска для каждого столбца в сетку данных UWP, чтобы я мог фильтровать результаты по тексту в этом столбце, как в таблице Excel?

Ответ №1:

Можно ли добавить строку с полем поиска для каждого столбца в сетку данных UWP, чтобы я мог фильтровать результаты

В настоящее время нет такой таблицы, в которую можно было бы напрямую фильтровать, и вставить новое поле поиска в виде строки DataGrid сложно реализовать.

Для вашего сценария мы предлагаем вам ComboBox добавить DataGrid и интегрировать свойство, которое вы хотите отфильтровать , в качестве источника данных ComboBox. Затем используйте выбранное значение для фильтрации DataGrid .

 private ObservableCollection<Item> temp;
private void SearchBox_Loaded(object sender, RoutedEventArgs e)
{
    SearchBox.ItemsSource = MyClasses.OrderBy(x => x.Name).Select(x => x.Name).Distinct().ToList();
    temp = MyClasses;
}  
private void SearchBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
    MyDataGrid.ItemsSource = new ObservableCollection<Item>(from item in temp
                                                            where item.Name == SearchBox.SelectedValue.ToString()
                                                         select item);
}
 

Xaml

 <ComboBox
    x:Name="SearchBox"  
    HorizontalAlignment="Center"
    VerticalAlignment="Top"
    Loaded="SearchBox_Loaded"
    SelectionChanged="SearchBox_SelectionChanged"
     />