Hi Eric,
In this case you can cancel the closing operation and manually handle the
Click event. Please consider the sample below:
using System;
using System.Windows.Forms;
using Telerik.WinControls.UI.Docking;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
RadDock radDock1 = new RadDock();
radDock1.Dock = DockStyle.Fill;
this.Controls.Add(radDock1);
radDock1.ShowDocumentCloseButton = true;
radDock1.DockWindowClosing += new DockWindowCancelEventHandler(radDock1_DockWindowClosing);
ToolWindow toolWindow = new ToolWindow();
radDock1.DockWindow(toolWindow, DockPosition.Right);
DocumentWindow document = new DocumentWindow();
document.DocumentButtons = DocumentStripButtons.None;
radDock1.AddDocument(document);
document.TabStripItem.CloseButton.Click += new EventHandler(CloseButton_Click);
DocumentWindow document2 = new DocumentWindow();
document2.DocumentButtons = DocumentStripButtons.None;
radDock1.AddDocument(document2);
document2.TabStripItem.CloseButton.Click += new EventHandler(CloseButton_Click);
DocumentWindow document3 = new DocumentWindow();
radDock1.AddDocument(document3);
document3.TabStripItem.CloseButton.Click += new EventHandler(CloseButton_Click);
}
void radDock1_DockWindowClosing(object sender, DockWindowCancelEventArgs e)
{
if (e.DockWindow is HostWindow || e.DockWindow is DocumentWindow)
{
e.Cancel = true;
}
}
void CloseButton_Click(object sender, EventArgs e)
{
MessageBox.Show("Close Click");
}
}
}
I hope this helps.
Regards,
Julian Benkov
the Telerik team