Hello,
Does anyone know if there is a property that can be checked if a Tabbed Document is visible on the TabStrip or is in the list of overflow tabs?
Or
What event is triggered when a Tabbed Document is selected from the list of Overflowed Tabs, besides the SelectedTabChanging/Changed?
I need a way to distinguish when a DockWindow is selected by clicking on the Tab versus selected from the overflow list.
Thanks,
Mike
Does anyone know if there is a property that can be checked if a Tabbed Document is visible on the TabStrip or is in the list of overflow tabs?
Or
What event is triggered when a Tabbed Document is selected from the list of Overflowed Tabs, besides the SelectedTabChanging/Changed?
I need a way to distinguish when a DockWindow is selected by clicking on the Tab versus selected from the overflow list.
Thanks,
Mike
2 Answers, 1 is accepted
0
Accepted
Richard Slade
Top achievements
Rank 2
answered on 07 Mar 2012, 12:17 PM
Hello Mike,
I've written a small exmaple for you on how to distinguish between selecting a tab via clicking on it as opposed to using the context menu in the overflow button to select the tab.
Hope this helps.
Form1 Designer
Form 1
I've written a small exmaple for you on how to distinguish between selecting a tab via clicking on it as opposed to using the context menu in the overflow button to select the tab.
Hope this helps.
Form1 Designer
namespace
RadControlsWinFormsApp3
{
partial
class
Form1
{
/// <summary>
/// Required designer variable.
/// </summary>
private
System.ComponentModel.IContainer components;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected
override
void
Dispose(
bool
disposing)
{
if
(disposing && (components !=
null
))
{
components.Dispose();
}
base
.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private
void
InitializeComponent()
{
this
.radDock1 =
new
Telerik.WinControls.UI.Docking.RadDock();
this
.documentContainer1 =
new
Telerik.WinControls.UI.Docking.DocumentContainer();
this
.documentWindow1 =
new
Telerik.WinControls.UI.Docking.DocumentWindow();
this
.documentTabStrip1 =
new
Telerik.WinControls.UI.Docking.DocumentTabStrip();
this
.documentWindow2 =
new
Telerik.WinControls.UI.Docking.DocumentWindow();
this
.documentWindow3 =
new
Telerik.WinControls.UI.Docking.DocumentWindow();
((System.ComponentModel.ISupportInitialize)(
this
.radDock1)).BeginInit();
this
.radDock1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(
this
.documentContainer1)).BeginInit();
this
.documentContainer1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(
this
.documentTabStrip1)).BeginInit();
this
.documentTabStrip1.SuspendLayout();
this
.SuspendLayout();
//
// radDock1
//
this
.radDock1.ActiveWindow =
this
.documentWindow3;
this
.radDock1.Controls.Add(
this
.documentContainer1);
this
.radDock1.Dock = System.Windows.Forms.DockStyle.Fill;
this
.radDock1.DocumentManager.DocumentInsertOrder = Telerik.WinControls.UI.Docking.DockWindowInsertOrder.InFront;
this
.radDock1.Location =
new
System.Drawing.Point(0, 0);
this
.radDock1.MainDocumentContainer =
this
.documentContainer1;
this
.radDock1.Name =
"radDock1"
;
this
.radDock1.Padding =
new
System.Windows.Forms.Padding(5);
//
//
//
this
.radDock1.RootElement.MinSize =
new
System.Drawing.Size(25, 25);
this
.radDock1.Size =
new
System.Drawing.Size(447, 389);
this
.radDock1.SplitterWidth = 4;
this
.radDock1.TabIndex = 0;
this
.radDock1.TabStop =
false
;
this
.radDock1.Text =
"radDock1"
;
//
// documentContainer1
//
this
.documentContainer1.Controls.Add(
this
.documentTabStrip1);
this
.documentContainer1.Location =
new
System.Drawing.Point(5, 5);
this
.documentContainer1.Name =
"documentContainer1"
;
this
.documentContainer1.Padding =
new
System.Windows.Forms.Padding(5);
//
//
//
this
.documentContainer1.RootElement.MinSize =
new
System.Drawing.Size(25, 25);
this
.documentContainer1.Size =
new
System.Drawing.Size(437, 379);
this
.documentContainer1.SizeInfo.SizeMode = Telerik.WinControls.UI.Docking.SplitPanelSizeMode.Fill;
this
.documentContainer1.SplitterWidth = 4;
this
.documentContainer1.TabIndex = 0;
this
.documentContainer1.TabStop =
false
;
//
// documentWindow1
//
this
.documentWindow1.Location =
new
System.Drawing.Point(6, 29);
this
.documentWindow1.Name =
"documentWindow1"
;
this
.documentWindow1.PreviousDockState = Telerik.WinControls.UI.Docking.DockState.TabbedDocument;
this
.documentWindow1.Size =
new
System.Drawing.Size(425, 344);
this
.documentWindow1.Text =
"documentWindow1"
;
//
// documentTabStrip1
//
this
.documentTabStrip1.Controls.Add(
this
.documentWindow3);
this
.documentTabStrip1.Controls.Add(
this
.documentWindow2);
this
.documentTabStrip1.Controls.Add(
this
.documentWindow1);
this
.documentTabStrip1.Location =
new
System.Drawing.Point(0, 0);
this
.documentTabStrip1.Name =
"documentTabStrip1"
;
//
//
//
this
.documentTabStrip1.RootElement.MinSize =
new
System.Drawing.Size(25, 25);
this
.documentTabStrip1.SelectedIndex = 0;
this
.documentTabStrip1.Size =
new
System.Drawing.Size(437, 379);
this
.documentTabStrip1.TabIndex = 0;
this
.documentTabStrip1.TabStop =
false
;
//
// documentWindow2
//
this
.documentWindow2.Location =
new
System.Drawing.Point(6, 29);
this
.documentWindow2.Name =
"documentWindow2"
;
this
.documentWindow2.PreviousDockState = Telerik.WinControls.UI.Docking.DockState.TabbedDocument;
this
.documentWindow2.Size =
new
System.Drawing.Size(425, 344);
this
.documentWindow2.Text =
"documentWindow2"
;
//
// documentWindow3
//
this
.documentWindow3.Location =
new
System.Drawing.Point(6, 29);
this
.documentWindow3.Name =
"documentWindow3"
;
this
.documentWindow3.PreviousDockState = Telerik.WinControls.UI.Docking.DockState.TabbedDocument;
this
.documentWindow3.Size =
new
System.Drawing.Size(425, 344);
this
.documentWindow3.Text =
"documentWindow3"
;
//
// Form1
//
this
.AutoScaleDimensions =
new
System.Drawing.SizeF(6F, 13F);
this
.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this
.ClientSize =
new
System.Drawing.Size(447, 389);
this
.Controls.Add(
this
.radDock1);
this
.Name =
"Form1"
;
this
.Text =
"Form1"
;
this
.Load +=
new
System.EventHandler(
this
.Form1_Load);
((System.ComponentModel.ISupportInitialize)(
this
.radDock1)).EndInit();
this
.radDock1.ResumeLayout(
false
);
((System.ComponentModel.ISupportInitialize)(
this
.documentContainer1)).EndInit();
this
.documentContainer1.ResumeLayout(
false
);
((System.ComponentModel.ISupportInitialize)(
this
.documentTabStrip1)).EndInit();
this
.documentTabStrip1.ResumeLayout(
false
);
this
.ResumeLayout(
false
);
}
#endregion
private
Telerik.WinControls.UI.Docking.RadDock radDock1;
private
Telerik.WinControls.UI.Docking.DocumentWindow documentWindow3;
private
Telerik.WinControls.UI.Docking.DocumentContainer documentContainer1;
private
Telerik.WinControls.UI.Docking.DocumentTabStrip documentTabStrip1;
private
Telerik.WinControls.UI.Docking.DocumentWindow documentWindow2;
private
Telerik.WinControls.UI.Docking.DocumentWindow documentWindow1;
}
}
Form 1
using
System;
using
System.Collections.Generic;
using
System.ComponentModel;
using
System.Data;
using
System.Drawing;
using
System.Linq;
using
System.Text;
using
System.Windows.Forms;
using
Telerik.WinControls.UI;
using
Telerik.WinControls.UI.Docking;
namespace
RadControlsWinFormsApp3
{
public
partial
class
Form1 : Form
{
public
Form1()
{
InitializeComponent();
}
private
bool
m_ContextMenuUsed;
private
void
Form1_Load(
object
sender, EventArgs e)
{
ContextMenuService menuService =
this
.radDock1.GetService<ContextMenuService>();
menuService.ContextMenuItemClicked +=
new
ContextMenuItemClickEventHandler(menuService_ContextMenuItemClicked);
this
.radDock1.ActiveWindowChanged +=
new
DockWindowEventHandler(radDock1_ActiveWindowChanged);
}
void
radDock1_ActiveWindowChanged(
object
sender, DockWindowEventArgs e)
{
if
(!m_ContextMenuUsed)
{
MessageBox.Show(e.DockWindow.TabStripItem.Text +
" selected by clicking on a tab"
);
}
m_ContextMenuUsed =
false
;
}
void
menuService_ContextMenuItemClicked(
object
sender, ContextMenuItemClickEventArgs e)
{
m_ContextMenuUsed =
true
;
if
(
this
.documentTabStrip1.SelectedTab.TabStripItem == e.DockWindow.TabStripItem)
{
MessageBox.Show(e.Item.Text +
" is already selected from overflow menu"
);
}
else
{
MessageBox.Show(e.Item.Text +
" selected from overflow menu"
);
}
}
}
}
0
MikeB
Top achievements
Rank 1
answered on 07 Mar 2012, 04:49 PM
Hello Richard.
That is exactly what I needed! Thank you!
Mike
That is exactly what I needed! Thank you!
Mike