ArcEngine 获取路径 AddData对话框
最近在利用Arcengine二次开发地图模板应用时需要更改数据源的功能,Arcengine的Adddata对话框可以方便地添加支持的各类数据,但是没有给出接口可以直接获取Adddata选择的数据源,自己直接写一个添加数据对话框又太费事,所以采用了一个间接方法,终于获取了adddata的数据源,方法如下:
1、在需要获取数据源的窗体中添加一个MapControl,并使其不可见;
2、在需要获取数据源的地方利用MapControl调Arcengine的adddata对话框,添加数据到隐藏的MapControl中:
mapControl1.ClearLayers();
ICommand cmd = new ControlsAddDataCommand();
cmd.OnCreate(mapControl1);
cmd.OnClick();
3、获取MapControl中新添加的图层
ILayer layer= map.GetLayer(i);
if (layer!= null)
{
//获取相关属性
IDataset dataset = layer as IDataset;
IWorkspace workspace = dataset.Workspace;
string outname = layer.Name;
string outpath = workspace.PathName;
}
//清空Map
mapControl1.ClearLayers();
4、让子窗体不失去焦点: ZiFrm.ShowDialog();
转:http://blog.sina.com.cn/s/blog_7d3de1ef0101dw7l.html
转载自:https://blog.csdn.net/u013751758/article/details/76227476