ArcGIS Pro 3.4 API Reference Guide
ArcGIS.Desktop.Core Namespace / GeneralOptions Class / CustomDefaultToolbox Property
Example

In This Topic
    CustomDefaultToolbox Property
    In This Topic
    Gets and sets the path to a toolbox to use as the default toolbox for new projects
    Syntax
    public string CustomDefaultToolbox {get; set;}
    Public Property CustomDefaultToolbox As String
    Remarks
    Set DefaultToolboxOption to OptionSetting.UseCustomafter setting the CustomDefaultToolbox (to use the CustomDefaultToolbox with newly created projects). Attempting to set the DefaultToolboxOption to UseCustom before CustomDefaultToolbox contains a valid path will be ignored.
    Conversely, attempting to set the CustomDefaultToolbox back to null or empty string will be ignored if DefaultToolboxOption is currently set to UseCustom. The DefaultToolboxOption must be changed to UseDefault first.
    Example
    Get GeneralOptions
    var startMode = ApplicationOptions.GeneralOptions.StartupOption;
    var aprx_path = ApplicationOptions.GeneralOptions.StartupProjectPath;
    
    var hf_option = ApplicationOptions.GeneralOptions.HomeFolderOption;
    var folder = ApplicationOptions.GeneralOptions.CustomHomeFolder;
    
    var gdb_option = ApplicationOptions.GeneralOptions.DefaultGeodatabaseOption;
    var def_gdb = ApplicationOptions.GeneralOptions.CustomDefaultGeodatabase;
    
    var tbx_option = ApplicationOptions.GeneralOptions.DefaultToolboxOption;
    var def_tbx = ApplicationOptions.GeneralOptions.CustomDefaultToolbox;
    
    var create_in_folder = ApplicationOptions.GeneralOptions.ProjectCreateInFolder;
    
    Set GeneralOptions to Use Custom Settings
    //Set the application to use a custom project, home folder, gdb, and toolbox
    //In each case, the custom _path_ must be set _first_ before 
    //setting the "option". This ensures the application remains 
    //in a consistent state. This is the same behavior as on the Pro UI.
    if (string.IsNullOrEmpty(ApplicationOptions.GeneralOptions.StartupProjectPath))
      ApplicationOptions.GeneralOptions.StartupProjectPath = @"D:\data\usa.aprx";//custom project path first
    ApplicationOptions.GeneralOptions.StartupOption = StartProjectMode.WithDefaultProject;//option to use it second
    
    if (string.IsNullOrEmpty(ApplicationOptions.GeneralOptions.CustomHomeFolder))
      ApplicationOptions.GeneralOptions.CustomHomeFolder = @"D:\home_folder";//custom home folder first
    ApplicationOptions.GeneralOptions.HomeFolderOption = OptionSetting.UseCustom;//option to use it second
    
    if (string.IsNullOrEmpty(ApplicationOptions.GeneralOptions.CustomDefaultGeodatabase))
      ApplicationOptions.GeneralOptions.CustomDefaultGeodatabase = @"D:\data\usa.gdb";//custom gdb path first
    ApplicationOptions.GeneralOptions.DefaultGeodatabaseOption = OptionSetting.UseCustom;//option to use it second
    
    if (string.IsNullOrEmpty(ApplicationOptions.GeneralOptions.CustomDefaultToolbox))
      ApplicationOptions.GeneralOptions.CustomDefaultToolbox = @"D:\data\usa.tbx";//custom toolbox path first
    ApplicationOptions.GeneralOptions.DefaultToolboxOption = OptionSetting.UseCustom;//option to use it second
    
    Set GeneralOptions to Use Defaults
    //Default options can be set regardless of the value of the "companion"
    //path (to a project, folder, gdb, toolbox, etc.). The path value is ignored if
    //the option setting does not use it. This is the same behavior as on the Pro UI.
    ApplicationOptions.GeneralOptions.StartupOption = StartProjectMode.ShowStartPage;
    ApplicationOptions.GeneralOptions.HomeFolderOption = OptionSetting.UseDefault;
    ApplicationOptions.GeneralOptions.DefaultGeodatabaseOption = OptionSetting.UseDefault;
    ApplicationOptions.GeneralOptions.DefaultToolboxOption = OptionSetting.UseDefault;//set default option first
    
    //path values can (optionally) be set (back) to null if their 
    //"companion" option setting is the default option.
    if (ApplicationOptions.GeneralOptions.StartupOption != StartProjectMode.WithDefaultProject)
      ApplicationOptions.GeneralOptions.StartupProjectPath = null;
    if (ApplicationOptions.GeneralOptions.HomeFolderOption == OptionSetting.UseDefault)
      ApplicationOptions.GeneralOptions.CustomHomeFolder = null;
    if (ApplicationOptions.GeneralOptions.DefaultGeodatabaseOption == OptionSetting.UseDefault)
      ApplicationOptions.GeneralOptions.CustomDefaultGeodatabase = null;
    if (ApplicationOptions.GeneralOptions.DefaultToolboxOption == OptionSetting.UseDefault)
      ApplicationOptions.GeneralOptions.CustomDefaultToolbox = null;
    
    Requirements

    Target Platforms: Windows 11, Windows 10

    ArcGIS Pro version: 3 or higher.
    See Also