/// <summary> /// Add the cell's value to the filter list. /// </summary> /// <param name="cell"></param> internal void AddToFilterList(Cell cell) { // The SingleOccurancyList will take care of making sure that the value is only present once in the list. if ((cell.Value == null) || (cell.Value == DBNull.Value)) { m_filterItems[s_nullText] = new ComparisonFilter(ComparisonType.Eq, null); } else { if (cell.CellViewerManager is INameValueControl) { m_filterItems[cell.GetDisplayText()] = new ComparisonFilter(ComparisonType.Eq, cell.GetDisplayText()); } else if (cell.Value is IComparable) { m_filterItems[cell.GetDisplayText()] = new ComparisonFilter(ComparisonType.Eq, cell.Value); } else { m_filterItems[cell.GetDisplayText()] = new ComparisonFilter(ComparisonType.Eq, "None"); } } }
private IFilter GetFilter() { try { if (cobOperator1.SelectedDataValue == null || cobValue1.SelectedDataValue == null) { return null; } IFilter filter1 = new ComparisonFilter((ComparisonType) cobOperator1.SelectedDataValue, GetComboValueSelectedValue(cobValue1)); if (cobOperator2.SelectedDataValue == null || cobValue2.SelectedDataValue == null) { return filter1; } IFilter filter2 = new ComparisonFilter((ComparisonType)cobOperator2.SelectedDataValue, GetComboValueSelectedValue(cobValue2)); return rbnLogic.Checked ? new LogicalFilter(LogicalOperator.And, filter1, filter2) : new LogicalFilter(LogicalOperator.Or, filter1, filter2); } catch (Exception ex) { ExceptionProcess.ProcessWithResume(ex); return null; } }