I'm trying to use the RadDocking for its tabs that can be peeled off into new windows- ideally when this is done I'll have something like Chrome or IE's tabs. I know it's not a perfect match, but I don't know of any other controls that work better for this.
My specific problem, is that when I drag a tab out of its tab strip, it floats immediately, and I don't know how to catch an event for "dropping" it- letting go of the mouse in a non-docking region. I'm hoping that I can detect the drop, rather than the pick up, because I need to build a new window around floating tabs, but I also need to make sure not to "window in" tabs in transit to other docking areas.
For reference, my current (non-working) code is below. Its problem is that I never get a chance to move tabs to existing dockin gregions, it always makes the new window.
Also, if you can think of a better way to make a draggable tab interface than using RadDocking, please let me know.
My specific problem, is that when I drag a tab out of its tab strip, it floats immediately, and I don't know how to catch an event for "dropping" it- letting go of the mouse in a non-docking region. I'm hoping that I can detect the drop, rather than the pick up, because I need to build a new window around floating tabs, but I also need to make sure not to "window in" tabs in transit to other docking areas.
For reference, my current (non-working) code is below. Its problem is that I never get a chance to move tabs to existing dockin gregions, it always makes the new window.
private
void
radDocking1_PaneStateChange(
object
sender, Telerik.Windows.RadRoutedEventArgs e)
{
if
(e.OriginalSource.GetType() ==
typeof
(RadPane))
{
RadPane Pane = (RadPane)e.OriginalSource;
if
(Pane.IsFloating)
{
MainWindow newWindow =
new
MainWindow();
Pane.RemoveFromParent();
newWindow.radPaneGroup1.AddItem(Pane, DockPosition.Center);
newWindow.Show();
}
}
}
Also, if you can think of a better way to make a draggable tab interface than using RadDocking, please let me know.