利用gp自己做的生成缓冲区的代码
主要部分代码,参数来源略
Geoprocessor gp = new Geoprocessor();
gp.OverwriteOutput = true;
ESRI.ArcGIS.AnalysisTools.Buffer pbuffer = new ESRI.ArcGIS.AnalysisTools.Buffer();
pbuffer.in_features = pFeLayer;
pbuffer.buffer_distance_or_field = Convert.ToString((this.textBox1.Text)) + " " + (string)this.comboBox2.Text;
pbuffer.out_feature_class = this.textBox2.Text;
gp.Execute(pbuffer, null);
IFeatureLayer pFeatureLayer = new FeatureLayerClass();
IWorkspaceFactory pWsF = new ShapefileWorkspaceFactoryClass();
IFeatureWorkspace pFWs = (IFeatureWorkspace)pWsF.OpenFromFile(FilePath, 0);
IFeatureClass pFeatureClass = pFWs.OpenFeatureClass(FileName);
pFeatureLayer.FeatureClass = pFeatureClass;
pFeatureLayer.Name = pFeatureClass.AliasName;
prmForm.axMapControl1.AddLayer(pFeatureLayer);
MessageBox.Show("缓冲完毕", "提示");
prmForm.axMapControl1.ActiveView.PartialRefresh(esriViewDrawPhase.esriViewAll, null, null);