Pane header not visible when PaneGroup's TabStripPlacement property set to Top

4 posts, 1 answers
  1. Pascal GUERY
    Pascal GUERY avatar
    38 posts
    Member since:
    Apr 2010

    Posted 22 Jan 2014 Link to this post

    Hi everyone,

    I have developed a sample projet using RadControls for WPF Q3 2013 Trial Version.
    The main window contains :
    - A "Create Pane" button
    - A user control which encapsulates a Docking control. The Docking's HasDocumentHost property is set to false

    The StyleManager.ApplicationTheme property is set to an instance of SummerTheme.

    Here is the user control's code-behind :

    using System;
    using System.Collections.Generic;
    using System.IO;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows;
    using System.Windows.Controls;
    using System.Windows.Data;
    using System.Windows.Documents;
    using System.Windows.Input;
    using System.Windows.Media;
    using System.Windows.Media.Imaging;
    using System.Windows.Navigation;
    using System.Windows.Shapes;
    using Telerik.Windows.Controls;
     
    namespace NoDocumentHost
    {
        /// <summary>
        /// Interaction logic for DockingUC.xaml
        /// </summary>
        public partial class DockingUC : UserControl
        {
            public DockingUC()
            {
                InitializeComponent();
            }
     
            public void CreatePane()
            {
                RadSplitContainer l_splitContainer = new RadSplitContainer();
                RadPaneGroup l_paneGroup = new RadPaneGroup();
     
                l_splitContainer.Items.Add(l_paneGroup);
                m_docking.Items.Add(l_splitContainer);
     
                RadPane l_pane = new RadPane()
                {
                    CanUserPin = true,
                    Title = "Title",
                    Header = "Header",
                    CanUserClose = true,
                    ContextMenuTemplate = null
                };
     
                UserControl1 l_userControl = new UserControl1();
                l_pane.Content = l_userControl;
     
                l_paneGroup.Items.Add(l_pane);
                l_pane.MakeFloatingDockable();
            }
     
            private void DockingPaneStateChange(object p_sender, Telerik.Windows.RadRoutedEventArgs p_args)
            {
                Dispatcher.BeginInvoke(new Action(() =>
                {
                    RadPane l_pane = (RadPane)p_args.OriginalSource;
                    RadPaneGroup l_paneGroup = l_pane.PaneGroup;
                    l_paneGroup.TabStripPlacement = Dock.Top;
                }));
            }
        }
    }

    A floating Pane is created when the user clicks the "Create button".
    Each PaneGroup's TabStripPlacement property is set to Top.
    The Pane header is not visible when a Pane is docked as shown on the attached picture 1.png.

    I have commented the DockingPaneStateChange's body for a testing purpose.
    Each PaneGroup's TabStripPlacement property was not set to Top.
    The Pane header is visible when a Pane is docked as shown on the attached picture 2.png.

    I have looked for information on how to make the Pane header visible when the PaneGroup's TabStripPlacement property is set to Top.
    I have read the following forum thread : Forum Thread

    I do not understand why the Pane header is not visible when the PaneGroup's TabStripPlacement property is set to Top.
    Does the PaneGroup's TabStripPlacement property setter change the PaneGroup's TopTemplate property ?
    Do I have to follow the procedure described on the forum thread ?

    Thank you in advance for your answer
  2. Vladi
    Admin
    Vladi avatar
    744 posts

    Posted 27 Jan 2014 Link to this post

    Hello,

    We are not aware of such issue in the current version of RadDocking. The TabStripPlacement property is supported for both bottom and top values, the left and right values are provided in order for custom implementation to be available.We hope to have them implemented as a built-in feature in our of our future releases of RadDocking.

    I tested the described approach for setting the TabStripPlacement and wasn't able to reproduce the issue. When setting it both in the xaml or in the PaneStateChange event of the control no unexpected behavior was observed. I recorded a short video of how the scenario runs on our side and attached it to my response. Also you can find attached the sample project in which we tested it. If we have missed something please let us know.

    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. UI for WPF is Visual Studio 2017 Ready
  4. Pascal GUERY
    Pascal GUERY avatar
    38 posts
    Member since:
    Apr 2010

    Posted 27 Jan 2014 in reply to Vladi Link to this post

    Hi,

    Thank you for your rich answer.
    I have watched your video.
    You have actually reproduced my issue because docked panes do not have a pin button.
    I guess pin buttons are not visible because pane headers are hidden by tab strips.

    What do I need to do to make pane headers visible ?
    Thank you in advance for your help







  5. Answer
    Vladi
    Admin
    Vladi avatar
    744 posts

    Posted 30 Jan 2014 Link to this post

    Hi,

    Thank you for providing us with additional details about the issue.

    In the current version of RadDocking the described behavior is expected as the Top TabStripPlacement replaces the default Header/Title in which the unpinn button is presented. Having an unpinn button when the TabStripPlacement is set to Top is currently not supported. It is possible that you could customize the TopTemplate of the RadPaneStyle and add the HeaderUnPinButton from the PaneHeaderTemplate.

    As this scenario is not currently supported it is possible that there may be issues when implementing it. 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 >>
Back to Top