
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using ESRI.ArcGIS.Geodatabase;
using ESRI.ArcGIS.Carto;
using ESRI.ArcGIS.DataSourcesFile;
namespace 加载打开 CAD 数据
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void 整幅加载 ToolStripMenuItem_Click(object sender,
EventArgs e)
{
#region 一:整幅加载
try
{
this.axMapControl1.ActiveView.Clear();//先清空当前
IWorkspaceFactory CADWsF;//using ESRI.ArcGIS.Geodatabase;
IFeatureWorkspace CADFWs;
IFeatureLayer CADFeatureLayer;//using ESRI.ArcGIS.Carto;
IFeatureDataset CADFeatureDataset;
OpenFileDialog CADOpenFileDialog = new OpenFileDialog();
CADOpenFileDialog.Title = "打开 CAD 数据文件";
CADOpenFileDialog.Filter = "CAD 数据(*.dwg)|*.dwg";
if (CADOpenFileDialog.ShowDialog() == DialogResult.OK)
{
string CADPath = CADOpenFileDialog.FileName;
if (CADPath == "")
{
return;
}
//获取文件名和文件路径
int pIndex = CADPath.LastIndexOf("\");
string CADFilePath = CADPath.Substring(0, pIndex);
string CADFileName = CADPath.Substring(pIndex + 1);
//打开 CAD 数据集
CADWsF = new CadWorkspaceFactoryClass(); //using
ESRI.ArcGIS.DataSourcesFile;
CADFWs =
(IFeatureWorkspace)CADWsF.OpenFromFile(CADFilePath, 0);
//打开一个要素集
CADFeatureDataset =
CADFWs.OpenFeatureDataset(CADFileName);