#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"
/>