Log In
Home
Support
Demos
Documentation
Blogs
Training
Webinars
[Expand]General Information
[Expand]WinForms Controls
[Expand]ASP.NET Controls and MVC Extensions
[Expand]ASP.NET Bootstrap Controls
[Expand]ASP.NET Core Bootstrap Controls
[Collapse]WPF Controls
  Prerequisites
 [Expand]What's Installed
 [Expand]Common Concepts
 [Collapse]MVVM Framework
  [Expand]ViewModels
  [Expand]Commands
  [Expand]Behaviors
  [Collapse]Services
    Getting Started
    Services in ViewModelBase descendants
    Services in POCO objects
    Services in custom ViewModels
    View creation mechanisms
   [Collapse]Predefined Set
    [Expand]Dialog Services
    [Expand]Message Box Services
    [Collapse]Document Services
      Document Management System
      FrameDocumentUIService
      TabbedDocumentUIService
      WindowedDocumentUIService
      DockingDocumentUIService
      TabbedWindowDocumentUIService
    [Expand]ViewInjectionService
    [Expand]Report Services
     NotificationService
     TaskbarButtonService
     ApplicationJumpListService
     DXSplashScreenService
     DispatcherService
     FrameNavigationService
     LayoutSerializationService
     FolderBrowserDialogService
     OpenFileDialogService
     SaveFileDialogService
     WizardService
     NotifyIconService
    How to create a Custom Service
  [Expand]DXBinding
  [Expand]MIF
   Converters
   ViewLocator
   Messenger
   Data Annotation Attributes
   LayoutTreeHelper
   Weak Event
 [Expand]Controls and Libraries
 [Expand]Scaffolding Wizard
 [Expand]Localization
  Redistribution and Deployment
  Get More Help
 [Expand]API Reference
[Expand]Xamarin Controls
[Expand]Windows 10 App Controls
[Expand]Office File API
[Expand]Reporting
[Expand]Report Server
[Expand]Dashboard
[Expand]eXpressApp Framework
[Expand]CodeRush
[Expand]CodeRush Classic
[Expand]Cross-Platform Core Libraries
[Expand]Tools and Utilities
 End-User Documentation

TabbedDocumentUIService

The TabbedDocumentUIService is an IDocumentManagerService implementation that allows you to show documents as tabbed DocumentPanels inside a DockLayoutManager's DocumentGroup.

Expanded Getting Started with TabbedDocumentUIService

Assume that you need to implement a tabbed document UI. When an end-user double-clicks a grid row, a new document should be created and shown as a full-fledged DocumentPanel. This newly created document should display information from the clicked row, i.e., an end-user can get a document representation of each row.

Suppose that this is the MainView.

To handle and process the TableView.RowDoubleClick event at the ViewModel level, subscribe to this event via the EventToCommand class as shown in the code snippet below.

Add the TabbedDocumentUIService to the View's Interaction.Behaviors collection and bind the TabbedDocumentUIService.DocumentGroup property to an existing DocumentGroup.

Access the defined TabbedDocumentUIService from the View Model as described in the Services in ViewModelBase descendants (if you are using a ViewModelBase descendant) or Services in POCO objects topic (if you are using a POCO ViewModels). Then, create a document by using one of the CreateDocument extension methods provided by the DocumentManagerServiceExtensions class and show the newly created document by using its IDocument.Show method.

If the DocumentGroup property is not specified, the CreateDocument method returns null and the required document isn't created.

To get detailed information about the document processing mechanism, refer to the Document Management System topic.

Expanded Customization Options

TabbedDocumentUIService provides several properties that allow you to customize the document's view.

These properties are used by the view creation mechanism. You can learn more about them in the following topic: View creation mechanisms

The following properties are used to customize the document's container.

Expanded Example

Show Me

A complete sample project is available in the DevExpress Code Examples database at http://www.devexpress.com/example=T211373.

Is this topic helpful?​​​​​​​