您的位置:首页 > 娱乐 > 明星 > ArcGIS Pro SDK (五)内容 7 应用程序选项

ArcGIS Pro SDK (五)内容 7 应用程序选项

2024/12/27 1:01:21 来源:https://blog.csdn.net/szy13323042191/article/details/139950031  浏览:    关键词:ArcGIS Pro SDK (五)内容 7 应用程序选项

ArcGIS Pro SDK (五)内容 6 工程单位

目录

  • ArcGIS Pro SDK (五)内容 6 工程单位
    • 1 获取常规选项
    • 2 将“常规选项”设置为使用自定义设置
    • 3 设置常规选项以使用默认值
    • 4 获取下载选项
    • 5 设置共享和发布的暂存位置
    • 6 设置 PPKX 的下载选项
    • 7 设置解压缩的下载选项其他
    • 8 设置离线地图的下载选项

环境:Visual Studio 2022 + .NET6 + ArcGIS Pro SDK 3.0

1 获取常规选项

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;

2 将“常规选项”设置为使用自定义设置

//设置应用程序使用自定义项目、主文件夹、gdb和toolbox在每种情况下,
//必须首先设置自定义路径,然后再设置“选项”。
//这确保了应用程序保持一致的状态。这与Pro UI上的行为是相同的。
if (string.IsNullOrEmpty(ApplicationOptions.GeneralOptions.StartupProjectPath))ApplicationOptions.GeneralOptions.StartupProjectPath = @"D:\data\usa.aprx";//先自定义项目路径
ApplicationOptions.GeneralOptions.StartupOption = StartProjectMode.WithDefaultProject;//其次选择使用它if (string.IsNullOrEmpty(ApplicationOptions.GeneralOptions.CustomHomeFolder))ApplicationOptions.GeneralOptions.CustomHomeFolder = @"D:\home_folder";//先自定义主文件夹
ApplicationOptions.GeneralOptions.HomeFolderOption = OptionSetting.UseCustom;//其次选择使用它if (string.IsNullOrEmpty(ApplicationOptions.GeneralOptions.CustomDefaultGeodatabase))ApplicationOptions.GeneralOptions.CustomDefaultGeodatabase = @"D:\data\usa.gdb";//先自定义gdb路径
ApplicationOptions.GeneralOptions.DefaultGeodatabaseOption = OptionSetting.UseCustom;//其次选择使用它if (string.IsNullOrEmpty(ApplicationOptions.GeneralOptions.CustomDefaultToolbox))ApplicationOptions.GeneralOptions.CustomDefaultToolbox = @"D:\data\usa.tbx";//先自定义ToolBox路径
ApplicationOptions.GeneralOptions.DefaultToolboxOption = OptionSetting.UseCustom;//其次选择使用它

3 设置常规选项以使用默认值

//默认选项的设置与“伴生”路径(项目、文件夹、gdb、工具箱等)的值无关。
//如果选项设置不使用路径值,则忽略它。这与Pro UI上的行为是相同的。
ApplicationOptions.GeneralOptions.StartupOption = StartProjectMode.ShowStartPage;
ApplicationOptions.GeneralOptions.HomeFolderOption = OptionSetting.UseDefault;
ApplicationOptions.GeneralOptions.DefaultGeodatabaseOption = OptionSetting.UseDefault;
ApplicationOptions.GeneralOptions.DefaultToolboxOption = OptionSetting.UseDefault;//如果“companion”选项设置为默认选项,路径值可以(可选)设置为null。
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;

4 获取下载选项

var staging = ApplicationOptions.DownloadOptions.StagingLocation;var ppkx_loc = ApplicationOptions.DownloadOptions.UnpackPPKXLocation;
var ask_ppkx_loc = ApplicationOptions.DownloadOptions.AskForUnpackPPKXLocation;var other_loc = ApplicationOptions.DownloadOptions.UnpackOtherLocation;
var ask_other_loc = ApplicationOptions.DownloadOptions.AskForUnpackOtherLocation;
var use_proj_folder = ApplicationOptions.DownloadOptions.UnpackOtherToProjectLocation;var offline_loc = ApplicationOptions.DownloadOptions.OfflineMapsLocation;
var ask_offline_loc = ApplicationOptions.DownloadOptions.AskForOfflineMapsLocation;
var use_proj_folder_offline = ApplicationOptions.DownloadOptions.OfflineMapsToProjectLocation;

5 设置共享和发布的暂存位置

ApplicationOptions.DownloadOptions.StagingLocation = @"D:\data\staging";

6 设置 PPKX 的下载选项

//选项是互斥的。//设置ApplicationOptions.DownloadOptions.AskForUnpackPPKXLocation = true 接替
//ApplicationOptions.DownloadOptions.UnpackPPKXLocation中的任何值,并提示用户进行解包。
//ApplicationOptions.DownloadOptions.UnpackPPKXLocation的值将不受影响并被忽略。
//这与Pro UI上的行为是相同的。
ApplicationOptions.DownloadOptions.AskForUnpackPPKXLocation = true;//override location//将ApplicationOptions.DownloadOptions.UnpackPPKXLocation设置为任何位置会覆盖
//ApplicationOptions.DownloadOptions.AskForUnpackPPKXLocation并将其设置为false。
//这与Pro UI上的行为是相同的。
ApplicationOptions.DownloadOptions.UnpackPPKXLocation = @"D:\data\for_ppkx";//或者,如果ApplicationOptions.DownloadOptions.UnpackPPKXLocation已经包含一个有效的路径,
//则显式地将ApplicationOptions.DownloadOptions.AskForUnpackPPKXLocation设置为false,
//以使用UnpackPPKXLocation
if (!string.IsNullOrEmpty(ApplicationOptions.DownloadOptions.UnpackPPKXLocation))ApplicationOptions.DownloadOptions.AskForUnpackPPKXLocation = false;

7 设置解压缩的下载选项其他

//解包其他设置控制除ppkx或aptx之外的任何内容的解包。选项是互斥的。//设置ApplicationOptions.DownloadOptions.UnpackOtherLocation显式地将
//ApplicationOptions.DownloadOptions.AskForUnpackOtherLocation和
//Applicationoptions.DownloadOptions.UnpackOtherToProjectLocation设置为false
//注意:默认值通常是<My Documents>\ArcGIS\Packages,而不是null。
//这与Pro UI上的行为是相同的。
ApplicationOptions.DownloadOptions.UnpackOtherLocation = @"D:\data\for_other";//或者……要使用已经存储在UnpackOtherLocation中的位置作为默认值而不改变它,需要显式地将
//ApplicationOptions.DownloadOptions.AskForUnpackOtherLocation和
//ApplicationOptions.DownloadOptions.UnpackOtherToProjectLocation设置为false。
//这与Pro UI上的行为是相同的。
if (!string.IsNullOrEmpty(ApplicationOptions.DownloadOptions.UnpackOtherLocation))
{ApplicationOptions.DownloadOptions.AskForUnpackOtherLocation = false;ApplicationOptions.DownloadOptions.UnpackOtherToProjectLocation = false;
}//将ApplicationOptions.DownloadOptions.AskForUnpackOtherLocation设置为true
//会覆盖所有UnpackOtherLocation的值,并将
//ApplicationOptions.DownloadOptions.UnpackOtherToProjectLocation设置为false。
//这与Pro UI上的行为是相同的。
ApplicationOptions.DownloadOptions.AskForUnpackOtherLocation = true;//将ApplicationOptions.DownloadOptions.UnpackOtherToProjectLocation设置为true
//会覆盖所有UnpackOtherLocation的值,并将
//ApplicationOptions.DownloadOptions.AskForUnpackOtherLocation设置为false。
//这与Pro UI上的行为是相同的。
ApplicationOptions.DownloadOptions.UnpackOtherToProjectLocation = false;

8 设置离线地图的下载选项

//OfflineMaps设置控制将脱机的地图内容复制到本地计算机上的位置。选项是互斥的。//显式设置ApplicationOptions.DownloadOptions.OfflineMapsLocation,将
//ApplicationOptions.DownloadOptions.AskForOfflineMapsLocation和
//ApplicationOptions.DownloadOptions.OfflineMapsToProjectLocation切换为false
//注意:默认通常是<My Documents>\ArcGIS\OfflineMaps, * * not* * null。
//这与Pro UI上的行为是相同的。
ApplicationOptions.DownloadOptions.OfflineMapsLocation = @"D:\data\for_offline";//或者……要使用已经存储在OfflineMapsLocation中的位置作为默认位置,而不更改它,
//将ApplicationOptions.DownloadOptions.AskForOfflineMapsLocation和
//ApplicationOptions.DownloadOptions.OfflineMapsToProjectLocation显式设置为false
if (!string.IsNullOrEmpty(ApplicationOptions.DownloadOptions.OfflineMapsLocation))
{ApplicationOptions.DownloadOptions.AskForOfflineMapsLocation = false;ApplicationOptions.DownloadOptions.OfflineMapsToProjectLocation = false;
}//将ApplicationOptions.DownloadOptions.AskForOfflineMapsLocation设置为true
//会覆盖所有的OfflineMapsLocation值,并将
//ApplicationOptions.DownloadOptions.OfflineMapsToProjectLocation设置为false。
//这与Pro UI上的行为是相同的。
ApplicationOptions.DownloadOptions.AskForOfflineMapsLocation = true;//将ApplicationOptions.DownloadOptions.OfflineMapsToProjectLocation设置为true
//会覆盖所有的OfflineMapsLocation值,并将
//ApplicationOptions.DownloadOptions.AskForOfflineMapsLocation设置为false。
//这与Pro UI上的行为是相同的。
ApplicationOptions.DownloadOptions.OfflineMapsToProjectLocation = true;

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com