В настоящее время я фильтрую свой RadGridView с помощью CompositeFilterDescriptor.
CompositeFilterDescriptor searchFilter1 = new CompositeFilterDescriptor();
searchFilter1.FilterDescriptors.Add(new FilterDescriptor("long_description", FilterOperator.Contains, desciption_search.Text));
Я добавляю еще несколько дескрипторов фильтра на основе других текстовых полей и т. Д., И они работают нормально.Я сейчас пытаюсь добавить во второй фильтр поиска.Причина этого в том, что я хочу, чтобы searchFilter2
имел логический оператор Or, а не And.
CompositeFilterDescriptor searchFilter2 = new CompositeFilterDescriptor();
searchFilter2.LogicalOperator = FilterLogicalOperator.Or;
searchFilter2.FilterDescriptors.Add(new FilterDescriptor("product", FilterOperator.Contains, product_search.Text));
Выше приведен мой код для добавления этого второго searchFilter.Однако добавление в этот код вызывает следующую ошибку при первой загрузке сетки.
![enter image description here](https://i.stack.imgur.com/i8PCt.png)
Я не уверен, что означает эта ошибка из-за отсутствияномера строк и т. д. Программа все равно будет загружаться, и при попытке поиска по сетке возникает следующая ошибка:
![enter image description here](https://i.stack.imgur.com/DUsPC.png)
Строка 579, к которой относится ошибкасодержит следующий код:
this.rgv_products.MasterTemplate.FilterDescriptors.Remove("product");
Возможно ли мне добавить два поисковых фильтра таким образом или есть лучший способ фильтрации RadGridView?
Еслилюбой дополнительный код необходим и т. д., пожалуйста, дайте мне знать.