【ArcGISProSDK】OpenItemDialog打开文件对话框

发布于:2024-06-15 ⋅ 阅读:(143) ⋅ 点赞:(0)

打开单个文件

效果

代码 

public async void OpenFunction()
{
    // 获取默认数据库
    var gdbPath = Project.Current.DefaultGeodatabasePath;
    OpenItemDialog openItemDialog = new OpenItemDialog() 
    { 
        Title ="打开要素文件",
        InitialLocation = gdbPath,
        Filter = ItemFilters.FeatureClasses_All,
        MultiSelect = false,
    };
    bool? ok = openItemDialog.ShowDialog();
    if (!ok.HasValue || openItemDialog.Items.Count() == 0)
    {
        MessageBox.Show("打开文件失败");
        return;
    }
    else
    {
        Item item = openItemDialog.Items.First();
        ImputShpPath = item.Path;
    }
}

ImputShpPath为最终选择文件的路径

打开多个文件

代码

protected override void OnClick()
{
    // 获取默认数据库
    var gdbPath = Project.Current.DefaultGeodatabasePath;
    OpenItemDialog openTheMultiFolder = new OpenItemDialog();
    openTheMultiFolder.Title = "打开多个文件";
    openTheMultiFolder.InitialLocation = gdbPath;
    openTheMultiFolder.MultiSelect = true;
    openTheMultiFolder.Filter = ItemFilters.FeatureClasses_All;
    bool? ok = openTheMultiFolder.ShowDialog();
    if (ok == true)
    {
        IEnumerable<Item> selectedItems = openTheMultiFolder.Items;
        foreach (Item selectedItem in selectedItems)
            MessageBox.Show(selectedItem.Path);
    }
}

参考文献

Items 属性 (OpenItemDialog)—ArcGIS Pro


网站公告

今日签到

点亮在社区的每一天
去签到