ArcGIS Pro 2.8 API Reference Guide
BackstageTab Class
Members  Example 

ArcGIS.Desktop.Framework.Contracts Namespace : BackstageTab Class
Represents a tab in the application backstage. This is an abstract class.
Syntax
Public MustInherit Class BackstageTab 
   Inherits PropertyChangedBase
   Implements System.ComponentModel.INotifyPropertyChanged 
Remarks

The Backstage is a full-screen user interface view that exposes additional functionality for the application and current project. The backstage consists of tabs and buttons. Each tab is scoped to a particular task and presents its own user interface. Buttons are simply commands that perform an operation and have no additional user interface in the backstage.

Backstage tabs are also contextual and will appear disabled in they specify a condition that has not been satisfied.

A custom BackstageTab has two components: a component class that derives from BackstageTab and a view class that derives from FrameworkElement, typically a UserControl. Backstage tabs must be defined in DAML.

DAML attributes
id Required identifier.
caption The tab label.
keytip The access key for the tab in keytip mode.
condition The DAML condition ID if the tab is contextual.
separator Show a separator before the item.
className Required class identifier. Optionally include namespace if not in default namespace.
assembly Assembly name if not in the default assembly.
publicKeyToken The necessary public key token if the assembly is strongly named.
version The version of the dll if the assembly is strongly named.

Example
<backstage>
   <insertTab id=acme_backstage_Options keytip="D" className="AcmeBackstageVM" caption="Options>
    <content className="AcmeBackstageTabOptionsView"/>
  </insertTab>
</backstage>
/*

   Copyright 2018 Esri

   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

   See the License for the specific language governing permissions and
   limitations under the License.

*/
using ArcGIS.Desktop.Framework;
using System.Windows.Input;

internal class AcmeBackstageVM : ArcGIS.Desktop.Framework.Contracts.BackstageTab
{
  private string _message;
  private RelayCommand _testCommand;

  public AcmeBackstageVM()
  {
    _testCommand = new RelayCommand(() => DoSomething(), false);
  }

  public ICommand TestCommand { get { return _testCommand; } }

  public string Message
  {
    get { return _message; }
    set
    {
      SetProperty(ref _message, value, () => Message);
    }
  }

  private void DoSomething()
  {
    Message = "Hello World!";
  }
}
Inheritance Hierarchy

System.Object
   ArcGIS.Desktop.Framework.Contracts.PropertyChangedBase
      ArcGIS.Desktop.Framework.Contracts.BackstageTab

Requirements

Target Platforms: Windows 10, Windows 8.1

See Also

Reference

BackstageTab Members
ArcGIS.Desktop.Framework.Contracts Namespace
Button Class