Home Forums WinForms controls Other WinForms controls MDI Tool Window – Missing Context Menu Items

Viewing 5 posts - 1 through 5 (of 5 total)
  • Author
    Posts
  • User (Old forums)
    Member
    Post count: 23064
    #18490 |

    I am evaluating the Docking Windows control, specifically using ToolWindows that can either be docked, floating or Tabbed Documents. To this end I have a Windows Form with both a DockLayoutManager and a TabbedMdiManager control, and the Form has IsMdiContainer=True

    When I right click on the caption bar of a Floating or docked ToolWindow, the context menu is displayed with the complete list of options (Floating, Dockable, Tabbed Document, AutoHide, Hide)

    If I select “Tabbed Document” the Tool Window correctly becomes a Tabbed Document.

    If I then Right Click on the Tab of this document the context menu only shows two options, Close and Tabbed Document. With no Floating, Dockable, AutoHide or Hide it is impossible to remove this Tool Window from the Tabbed Document Group.

    Is this a bug, or am I missing some configuration to show these other options in the context menu?

    Thanks in advance for any help

    Gareth 

     

     

    Imported from legacy forums. Posted by Gareth (had 6222 views)

    User (Old forums)
    Member
    Post count: 23064

    Actually, we do not reproduce this on our side.  Do you have a code snippet you could supply so we can investigate this further?

    Imported from legacy forums. Posted by André (had 987 views)

    User (Old forums)
    Member
    Post count: 23064

    Hi Andre

    I have put together a little sample of my problem. If you run the below code it will produce a form with two docked mdi forms, and floating mdi capable toolwindow. The title bar of the toolwindow can be right-clicked and the context menu can be used to set it docked or floating without problem. However if you choose “Tabbed Document” the mdi toolwindow becomes another tab in the main mdi view, but right clicking the tab does not produce the context menu giving the option to set it back to Floating or Docked. This makes it impossible for the user to turn this toolwindow back to a docked window.

    Context Menu Items on Docked ToolWindow – “Floating”, “Dockable”, “Tabbed Document”, “AutoHide”, “Hide”

    Context Menu Items after “Tabbed Document” selected – “Close”, “Tabbed Document”

    The version of the Docking Windows Control I have is 2.1.8373.8220. Running on Windows2003R2x64 using VS2008

    Also on the GUI please note that the solid border below the currently selected tab make it less clear that it is the current tab, and doesn’t match the VS2005 style.

    Many thanks for looking into this, and sorry it took so long to send you this example..

    Gareth 

     

    Public Class MainForm

        Inherits System.Windows.Forms.Form

     

    #Region ” Designer Code “

     

        Public Sub New()

     

            ‘ This call is required by the Windows Form Designer.

            InitializeComponent()

     

            ‘ Add any initialization after the InitializeComponent() call.

     

        End Sub

     

        ‘Form overrides dispose to clean up the component list.

        <System.Diagnostics.DebuggerNonUserCode()> _

        Protected Overrides Sub Dispose(ByVal disposing As Boolean)

            Try

                If disposing AndAlso components IsNot Nothing Then

                    components.Dispose()

                End If

            Finally

                MyBase.Dispose(disposing)

            End Try

        End Sub

     

        Friend WithEvents DockLayoutManager1 As Xceed.DockingWindows.DockLayoutManager

        Friend WithEvents TabbedMdiManager1 As Xceed.DockingWindows.TabbedMdi.TabbedMdiManager

     

        ‘Required by the Windows Form Designer

        Private components As System.ComponentModel.IContainer

     

        ‘NOTE: The following procedure is required by the Windows Form Designer

        ‘It can be modified using the Windows Form Designer. 

        ‘Do not modify it using the code editor.

        <System.Diagnostics.DebuggerStepThrough()> _

        Private Sub InitializeComponent()

            Me.DockLayoutManager1 = New Xceed.DockingWindows.DockLayoutManager

            Me.TabbedMdiManager1 = New Xceed.DockingWindows.TabbedMdi.TabbedMdiManager

            CType(Me.DockLayoutManager1, System.ComponentModel.ISupportInitialize).BeginInit()

            CType(Me.TabbedMdiManager1, System.ComponentModel.ISupportInitialize).BeginInit()

            Me.SuspendLayout()

           

            ‘DockLayoutManager1

           

            Me.DockLayoutManager1.Style = Xceed.DockingWindows.RenderStyle.VS2005

           

            ‘DockLayoutManager1

           

            Me.DockLayoutManager1.Initialize(Me, Nothing)

           

            ‘TabbedMdiManager1

           

            Me.TabbedMdiManager1.Style = Xceed.DockingWindows.RenderStyle.VS2005

            Me.TabbedMdiManager1.TabStripAppearance.ShowDragHints = False

           

            ‘TabbedMdiManager1

           

            Me.TabbedMdiManager1.SubscribeToHostForm(Me)

           

            ‘MainForm

           

            Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)

            Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font

            Me.ClientSize = New System.Drawing.Size(593, 452)

            Me.IsMdiContainer = True

            Me.Name = “MainForm”

            Me.Text = “MainForm”

            CType(Me.DockLayoutManager1, System.ComponentModel.ISupportInitialize).EndInit()

            CType(Me.TabbedMdiManager1, System.ComponentModel.ISupportInitialize).EndInit()

            Me.ResumeLayout(False)

     

        End Sub

     

    #End Region

     

        Private Sub MainForm_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

     

     

            Dim MdiForm1 As New MdiForm

            MdiForm1.Text = “Mdi Form 1”

            MdiForm1.MdiParent = Me

            MdiForm1.Show()

     

            Dim MdiForm2 As New MdiForm

            MdiForm2.Text = “Mdi Form 2”

            MdiForm2.MdiParent = Me

            MdiForm2.Show()

     

            Dim ToolWindow As New Xceed.DockingWindows.ToolWindow

            ToolWindow.Text = “Tool Window”

            ToolWindow.Key = “ToolWindowKey”

            DockLayoutManager1.ToolWindows.Add(ToolWindow)

            ToolWindow.Activate()

     

        End Sub

     

    End Class

     

     

    Public Class MdiForm

        Inherits System.Windows.Forms.Form

     

    End Class

     

    Imported from legacy forums. Posted by Gareth (had 854 views)

    User (Old forums)
    Member
    Post count: 23064

    This is to let you know that we have reproduced the issue, but not in all circumstances.  So we will need some time to investigate it further.

    Imported from legacy forums. Posted by André (had 4301 views)

    User (Old forums)
    Member
    Post count: 23064

    Hi,

    I’m using both control DockLayoutManager as TabbedMdiManager on the same form, and i’m having the same problem as Gareth. I am using version 2.1.9460.14460 of Xceed.DockingWindows.

    Are there plans to solve this problem?

    Another question: is there a way to avoid that a tool window sets its state to MDI?

    Thanks in advance.

    Paul.

    Imported from legacy forums. Posted by Pablo G. (had 3072 views)

Viewing 5 posts - 1 through 5 (of 5 total)
  • You must be logged in to reply to this topic.