Category / Section
How to enable renaming functionality of TDI Document header at runtime of WPF DockingManager?
To enable the renaming functionality of the TDI document header at run time on double clicking, set the property EnableDocumentTabHeaderEdit of the WPF DockingManager to True.
Xaml
<Window x:Class="DockingManager_New.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:syncfusion="http://schemas.syncfusion.com/wpf" Title="MainWindow" Height="350" Width="525"> <Grid> <syncfusion:DockingManager x:Name="DockingManager1" UseDocumentContainer="True" EnableDocumentTabHeaderEdit="True" ContainerMode="TDI" > <ContentControl x:Name="content1" syncfusion:DockingManager.Header="Document1" syncfusion:DockingManager.State="Document"/> <ContentControl x:Name="content2" syncfusion:DockingManager.Header="Document2" syncfusion:DockingManager.State="Document"/> <ContentControl x:Name="content3" syncfusion:DockingManager.Header="Document3" syncfusion:DockingManager.State="Document"/> <ContentControl x:Name="content4" syncfusion:DockingManager.Header="Document4" syncfusion:DockingManager.State="Document"/> </syncfusion:DockingManager> </Grid> </Window>
C#
using Syncfusion.Windows.Tools.Controls;
namespace DockingManager_New
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
DockingManager dockingmanager = new DockingManager();
ContentControl content1 = new ContentControl();
dockingmanager.UseDocumentContainer = true;
DockingManager.SetHeader(content1, "Document1");
DockingManager.SetState(content1, DockState.Document);
ContentControl content2 = new ContentControl();
DockingManager.SetHeader(content2, "Document2");
DockingManager.SetState(content2, DockState.Document);
ContentControl content3 = new ContentControl();
DockingManager.SetHeader(content3, "Document3");
DockingManager.SetState(content3, DockState.Document);
ContentControl content4 = new ContentControl();
DockingManager.SetHeader(content4, "Document4");
DockingManager.SetState(content4, DockState.Document);
//Setting the EnableDocumentTabHeaderEdit to true, so that the tab header can edit at runtime
dockingmanager.EnableDocumentTabHeaderEdit = true;
dockingmanager.Children.Add(content1);
dockingmanager.Children.Add(content2);
dockingmanager.Children.Add(content3);
dockingmanager.Children.Add(content4);
Grid1.Children.Add(dockingmanager);
}
}
}
The following screenshot shows how the TDI document header can be edited at runtime on double clicking:
