private void HideSamplePicker()
        {
            SamplePickerGrid.Visibility = Visibility.Collapsed;
            _selectedCategory           = null;

            _ = SetNavViewSelectionAsync();
        }
예제 #2
0
        private void HideSamplePicker()
        {
            SamplePickerGrid.Visibility = Windows.UI.Xaml.Visibility.Collapsed;
            _selectedCategory           = null;

            var noop = SetNavViewSelection();
        }
예제 #3
0
 private void NavView_ItemInvoked(Microsoft.UI.Xaml.Controls.NavigationView sender, Microsoft.UI.Xaml.Controls.NavigationViewItemInvokedEventArgs args)
 {
     if (args.InvokedItem is SampleCategory category)
     {
         if (SamplePickerGrid.Visibility != Visibility.Collapsed && _selectedCategory == category)
         {
             // The NavView fires this event twice when the current selected item is clicked
             // This makes sure the event get's processed correctly
             var nop = Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () => HideSamplePicker());
         }
         else
         {
             _selectedCategory = category;
             ShowSamplePicker(category.Samples);
         }
     }
     else if (args.IsSettingsInvoked)
     {
         HideSamplePicker();
         if (NavigationFrame.CurrentSourcePageType != typeof(About))
         {
             NavigateToSample(null);
         }
     }
 }
        private void NavView_ItemInvoked(Microsoft.UI.Xaml.Controls.NavigationView sender, Microsoft.UI.Xaml.Controls.NavigationViewItemInvokedEventArgs args)
        {
            //// Temp Workaround for WinUI Bug https://github.com/microsoft/microsoft-ui-xaml/issues/2520
            var invokedItem = args.InvokedItem;

            if (invokedItem is FrameworkElement fe && fe.DataContext is SampleCategory cat2)
            {
                invokedItem = cat2;
            }
            //// End Workaround - args.InvokedItem

            // UNO TODO
            // force materialization
            FindName("SamplePickerGrid");

            if (invokedItem is SampleCategory category)
            {
                if (SamplePickerGrid.Visibility != Visibility.Collapsed && _selectedCategory == category)
                {
                    // The NavView fires this event twice when the current selected item is clicked
                    // This makes sure the event get's processed correctly
                    var nop = Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () => HideSamplePicker());
                }
                else
                {
                    _selectedCategory = category;
                    ShowSamplePicker(category.Samples, true);

                    // Then Focus on Picker
                    dispatcherQueue.EnqueueAsync(() => SamplePickerGridView.Focus(FocusState.Keyboard));
                }
            }
        }
예제 #5
0
        private void NavView_ItemInvoked(Microsoft.UI.Xaml.Controls.NavigationView sender, Microsoft.UI.Xaml.Controls.NavigationViewItemInvokedEventArgs args)
        {
            if (args.InvokedItem is SampleCategory category)
            {
                if (SamplePickerGrid.Visibility != Visibility.Collapsed && _selectedCategory == category)
                {
                    // The NavView fires this event twice when the current selected item is clicked
                    // This makes sure the event get's processed correctly
                    var nop = Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () => HideSamplePicker());
                }
                else
                {
                    _selectedCategory = category;
                    ShowSamplePicker(category.Samples, true);

                    // Then Focus on Picker
                    dispatcherQueue.EnqueueAsync(() => SamplePickerGridView.Focus(FocusState.Keyboard));
                }
            }
        }
        private void NavView_ItemInvoked(Microsoft.UI.Xaml.Controls.NavigationView sender, Microsoft.UI.Xaml.Controls.NavigationViewItemInvokedEventArgs args)
        {
            //// Temp Workaround for WinUI Bug https://github.com/microsoft/microsoft-ui-xaml/issues/2520
            var invokedItem = args.InvokedItem;

            if (invokedItem is FrameworkElement fe && fe.DataContext is SampleCategory cat2)
            {
                invokedItem = cat2;
            }
            //// End Workaround - args.InvokedItem

            if (invokedItem is SampleCategory category)
            {
                if (SamplePickerGrid.Visibility != Visibility.Collapsed && _selectedCategory == category)
                {
                    // The NavView fires this event twice when the current selected item is clicked
                    // This makes sure the event get's processed correctly
                    var nop = Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () => HideSamplePicker());
                }
                else
                {
                    _selectedCategory = category;
                    ShowSamplePicker(category.Samples, true);

                    // Then Focus on Picker
                    DispatcherHelper.ExecuteOnUIThreadAsync(() => SamplePickerGridView.Focus(FocusState.Keyboard));
                }
            }
            else if (args.IsSettingsInvoked)
            {
                HideSamplePicker();
                if (NavigationFrame.CurrentSourcePageType != typeof(About))
                {
                    NavigateToSample(null);
                }
            }
        }