ArcGIS Pro 3.0 API Reference Guide
ArcGIS.Desktop.Core Namespace / GeneralOptions Class / HomeFolderOption Property
Example

In This Topic
    HomeFolderOption Property
    In This Topic
    Gets and sets whether new projects are saved to the default home folder location or a custom location.
    Syntax
    public OptionSetting HomeFolderOption {get; set;}
    Public Property HomeFolderOption As OptionSetting
    Remarks
    When true, newly created projects are saved to the user profile directory at Documents\ArcGIS\Projects. Set HomeFolderOption to OptionSetting.UseCustom to use a custom location (defined in CustomHomeFolder) instead. Note: attempting to set HomeFolderOption to UseCustom will be ignored if CustomHomeFolder does not already contain a path to a valid folder. To set HomeFolderOption to UseCustom, the CustomHomeFolder must be set 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, Windows 8.1

    See Also