ArcGIS Pro 3.0 API Reference Guide
ArcGIS.Desktop.Framework Namespace / FrameworkApplication Class / Panes Property
Example

Panes Property
Gets all the active pane instances; this singleton also lets you activate, create, and close panes.
Syntax
public static PaneCollection Panes {get;}
Example
Close a specific pane
string _viewPaneID = "my pane"; //DAML ID of your pane
                                //You could have multiple instances (InstanceIDs) of your pane. 
                                //So you can iterate through the Panes to get "your" panes only
IList<uint> myPaneInstanceIDs = new List<uint>();
foreach (Pane pane in FrameworkApplication.Panes)
{
  if (pane.ContentID == _viewPaneID)
  {
    myPaneInstanceIDs.Add(pane.InstanceID); //InstanceID of your pane, could be multiple, so build the collection                    
  }
}
foreach (var instanceID in myPaneInstanceIDs) //close each of "your" panes.
{
  FrameworkApplication.Panes.ClosePane(instanceID);
}
Activate a pane
var mapPanes = ProApp.Panes.OfType<IMapPane>();
foreach (Pane pane in mapPanes)
{
  if (pane.Caption == "MyMap")
  {
    pane.Activate();
    break;
  }
}
Activate an already open layout view
//Activate an already open layout view.
//A layout view may be open but it may not be active.

//Find the pane that references the layout and activate it. 
//Note - there can be multiple panes referencing the same layout.
foreach (var pane in ProApp.Panes)
{
  var layoutPane = pane as ILayoutPane;
  if (layoutPane == null)  //if not a layout view, continue to the next pane
    continue;
  if (layoutPane.LayoutView.Layout == layout) //activate the view
  {
    (layoutPane as Pane).Activate();
    return;
  }
}
Requirements

Target Platforms: Windows 11, Windows 10, Windows 8.1

ArcGIS Pro version: 2.0 or higher.
See Also