Shortcut for Radpane navigation

8 posts, 1 answers
  1. Arnstein
    Arnstein avatar
    36 posts
    Member since:
    Oct 2012

    Posted 04 Oct 2013 Link to this post

     In Visual Studio it's possible to open a "navigation window" by pressing Ctrl + tab. This window shows active tool windows and active files. Do you have anything similar in Telerik docking? What I need is a way to navigate between radpanes using the keyboard.

    Regards
    Arnstein Volden
  2. Answer
    Vladi
    Admin
    Vladi avatar
    749 posts

    Posted 08 Oct 2013 Link to this post

    Hello,

    In the current version of RadDocking there isn't a built-in feature that could be used to assign keyboard shortcuts that will activate specific Panes but it is easily achievable.

    You can do the following:
    • Create a custom RoutedCommand
    • Set the InputGestures of that custom RoutedCommand
    • In the CommandBindings of the RadDocking set the newly created command and set the Executed event
    • In that handler implement a custom logic that will set a specific Pane to the ActivePane of the RadDocking control

    I created and attached a sample project for you of the described approach, hope this is helpful.


    Regards,
    Vladi
    Telerik
    TRY TELERIK'S NEWEST PRODUCT - EQATEC APPLICATION ANALYTICS for WPF.
    Learn what features your users use (or don't use) in your application. Know your audience. Target it better. Develop wisely.
    Sign up for Free application insights >>
  3. David Storey
    David Storey avatar
    7 posts
    Member since:
    Oct 2009

    Posted 06 Nov 2017 in reply to Vladi Link to this post

    Hello are there any plans to add in something like the QuickNavigation for docking thats offered with the Telerik winforms controls?

    I appreciate this can be done with input gestures but I need the UI view of the tabs on offer.  A lot more code that I was hoping not to write and would be offered by the controls we had purchased.

    Thanks

  4. Kalin
    Admin
    Kalin avatar
    1349 posts

    Posted 09 Nov 2017 Link to this post

    Hi David,

    Thanks for the feedback. We don't have such feature planned, however I logged in our Feedback portal. You can vote for it and track its status on the following link:
    https://feedback.telerik.com/Project/143/Feedback/Details/113003-docking-navigation-window-for-visible-panes-ctrltab

    If you have any other questions or concerns, let us know.

    Regards,
    Kalin
    Progress Telerik
    Want to extend the target reach of your WPF applications, leveraging iOS, Android, and UWP? Try UI for Xamarin, a suite of polished and feature-rich components for the Xamarin framework, which allow you to write beautiful native mobile apps using a single shared C# codebase.
  5. Decisive Computing
    Decisive Computing avatar
    17 posts
    Member since:
    Mar 2015

    Posted 14 Nov 2017 in reply to Kalin Link to this post

    Kalin, this sample is good, but it assumes you have certain tabs. Is there a way to tell Docking to activate the next tab in the DocumentHost?Take Visual Studio for example. You can have any number of files open and Ctrl+Tab will switch between them in the order in which they were accessed. Since Docking has a way to activate a specific pane when one is closed, is there a way to access that same logic to determine which pane to activate next using Ctrl+Tab?
  6. Kalin
    Admin
    Kalin avatar
    1349 posts

    Posted 17 Nov 2017 Link to this post

    Hello,

    I updated the link to the item in our Feedback portal in my previous post, as appeared this has already been logged.

    Brian - with the current implementation of RadDocking there isn't public built-in functionality to activate the next pane. However you could easily implement this by finding the current active Pane in the Document host and activating the one on the next index. For example if you do it on button click, here is a sample implementation:

    private void Button_Click(object sender, RoutedEventArgs e)
    {
        this.Dock.ActivePane = this.NextActivePane();
    }
     
    private RadPane NextActivePane()
    {
        var documentHostPanes = this.Dock.Panes.Where(p => p.IsInDocumentHost && !p.IsHidden && p.IsPinned).ToList();
        var nextIndexToActivate = documentHostPanes.IndexOf(this.Dock.ActivePane) + 1;
        if (nextIndexToActivate == documentHostPanes.Count)
        {
            nextIndexToActivate = 0;
        }
     
        return documentHostPanes.ElementAt(nextIndexToActivate);
    }

    Hope this helps.

    Regards,
    Kalin
    Progress Telerik
    Want to extend the target reach of your WPF applications, leveraging iOS, Android, and UWP? Try UI for Xamarin, a suite of polished and feature-rich components for the Xamarin framework, which allow you to write beautiful native mobile apps using a single shared C# codebase.
  7. Decisive Computing
    Decisive Computing avatar
    17 posts
    Member since:
    Mar 2015

    Posted 17 Nov 2017 in reply to Kalin Link to this post

    Thanks for that tip and that is the same solution I came up with. It would be really nice to implement this feature as many popular software packages (most notable Visual Studio) use the "last active" algorithm based on what tabs have been activated most recently (either by clicking, keyboard, or other means).
  8. Kalin
    Admin
    Kalin avatar
    1349 posts

    Posted 22 Nov 2017 Link to this post

    Hello Brian,

    I would like to thank you for the feedback. Please follow the item in our Feedback portal in order to get notified for any updates.

    If you have any other questions or concerns, please let us know.

    Regards,
    Kalin
    Progress Telerik
    Want to extend the target reach of your WPF applications, leveraging iOS, Android, and UWP? Try UI for Xamarin, a suite of polished and feature-rich components for the Xamarin framework, which allow you to write beautiful native mobile apps using a single shared C# codebase.
Back to Top