public OperationsControl() { InitializeComponent(); OperationsView.Source = OperationsList; OperationsView.View.Filter = (o) => { var op = o as Operation; if (op.ForcedType != null) { return(FilterTypes.Contains(op.ForcedType)); } else if (op.ForcedEntity != null) { return(FilterTypes.Contains(op.ForcedEntity.Type)); } else if (op.AutoEntity != null) { return(FilterTypes.Contains(op.AutoEntity.Type)); } else { return(FilterTypes.Contains(OperationType.Empty)); } }; operationsDataGrid.ItemsSource = OperationsView.View; }
private bool IsFiltered(Operation op) { if (op.ForcedType != null) { return(!FilterTypes.Contains(op.ForcedType)); } else if (op.ForcedEntity != null) { return(!FilterTypes.Contains(op.ForcedEntity.Type)); } else if (op.AutoEntity != null) { return(!FilterTypes.Contains(op.AutoEntity.Type)); } else { return(!FilterTypes.Contains(OperationType.Empty)); } }
public async Task <IActionResult> OnPostRefreshAsync() { return(await Filter.ProcessAsync(ModelState, nameof(Filter), async() => { await PrepareModelsAsync(Filter); return Page(); }, async() => { await PrepareModelsAsync(Filter); return Page(); }, vrList => { if (!Filter.Type.IsNullOrEmpty() && !FilterTypes.Contains(Filter.Type)) { vrList.Add(new ModelValidationResult(nameof(Filter.Type), "Некорректный тип фильтра")); } return Task.CompletedTask; })); }