Home › Forums › WinForms controls › Other WinForms controls › MDI Tool Window – Missing Context Menu Items
-
AuthorPosts
-
#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)
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)
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)
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)
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)
-
AuthorPosts
- You must be logged in to reply to this topic.