To reproduce: use the following code snippet. From the filtering box, when you select "Null" and then select "All", the following error occurs: Item has already been added. Key in dictionary: '(Blanks)' Key being added: '(Blanks)' DataTable dt = new DataTable(); dt.Columns.Add("Id", typeof(int)); dt.Columns.Add("Name", typeof(string)); dt.Rows.Add(1,"A"); dt.Rows.Add(2, ""); dt.Rows.Add(3, null); dt.Rows.Add(4, "B"); dt.Rows.Add(5, "C"); dt.Rows.Add(6, ""); this.radGridView1.DataSource = dt; this.radGridView1.AutoSizeColumnsMode = Telerik.WinControls.UI.GridViewAutoSizeColumnsMode.Fill; this.radGridView1.EnableFiltering = true; this.radGridView1.ShowFilteringRow = false; this.radGridView1.ShowHeaderCellButtons = true; Workaround: this.radGridView1.FilterPopupInitialized += radGridView1_FilterPopupInitialized; RadListFilterDistinctValuesTable selectedValues; private void radGridView1_FilterPopupInitialized(object sender, Telerik.WinControls.UI.FilterPopupInitializedEventArgs e) { RadListFilterPopup popup = e.FilterPopup as RadListFilterPopup; selectedValues = popup.MenuTreeElement.SelectedValues; popup.MenuTreeElement.TreeView.NodeCheckedChanged += TreeView_NodeCheckedChanged; } private void TreeView_NodeCheckedChanged(object sender, TreeNodeCheckedEventArgs e) { if (e.Node.CheckState == Telerik.WinControls.Enumerations.ToggleState.Off) { if (selectedValues.Contains(e.Node.Text)) { selectedValues.Remove(e.Node.Text); } } }