Example #1
0
        void popup_Closed(object sender, EventArgs e)
        {
            Popup popup = (Popup)sender;
            // navigate up to the header to obtain the filter property name
            GridViewColumnHeader header = (GridViewColumnHeader)BaseWPFHelpers.FindElementOfTypeUp(popup, typeof(GridViewColumnHeader));

            FilterColumn(header);
            popup.Closed -= new EventHandler(popup_Closed);
        }
Example #2
0
        private void RefreshItemsCommand(object sender, ExecutedRoutedEventArgs e)
        {
            GridViewColumnHeader header = (GridViewColumnHeader)BaseWPFHelpers.FindElementOfTypeUp((MenuItem)e.OriginalSource, typeof(GridViewColumnHeader));
            Popup popup = (Popup)BaseWPFHelpers.FindElementOfType(header, typeof(Popup));
            GridViewColumnWithFilterAndSorter column = (GridViewColumnWithFilterAndSorter)header.Column;

            ReBuildFiltersList(column.SortPropertyName, (ObservableCollection <FilterItem>)popup.DataContext);
            //popup.IsOpen = false;
        }
Example #3
0
        private void RemoveFiltersCommand(object sender, ExecutedRoutedEventArgs e)
        {
            GridViewColumnHeader header = (GridViewColumnHeader)BaseWPFHelpers.FindElementOfTypeUp((MenuItem)e.OriginalSource, typeof(GridViewColumnHeader));
            GridViewColumnWithFilterAndSorter column = (GridViewColumnWithFilterAndSorter)header.Column;
            Popup popup = (Popup)BaseWPFHelpers.FindElementOfType(header, typeof(Popup));

            //foreach (var filterItem in column.FilterItems)
            //{
            //    filterItem.IsChecked = false;
            //}
            column.FilterItems = null;
            popup.IsOpen       = false;
        }
Example #4
0
        /// <summary>
        /// Handles the ShowFilter command to populate the filter list and display the popup
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void ShowFilterCommand(object sender, ExecutedRoutedEventArgs e)
        {
            Button button = e.OriginalSource as Button;

            if (button != null)
            {
                // navigate up to the header
                GridViewColumnHeader header = (GridViewColumnHeader)BaseWPFHelpers.FindElementOfTypeUp(button, typeof(GridViewColumnHeader));
                // then down to the popup
                Popup popup = (Popup)BaseWPFHelpers.FindElementOfType(header, typeof(Popup));
                if (popup != null)
                {
                    // find the property name that we are filtering
                    GridViewColumnWithFilterAndSorter column = GetColumnFilters(header);
                    // open the popup to display this list
                    popup.Closed     += new EventHandler(popup_Closed);
                    popup.DataContext = column.FilterItems;

                    popup.IsOpen = true;
                }
            }
        }