/// <summary> /// 从图层获取符号类型 /// </summary> /// <param name="pLayer"></param> /// <returns></returns> private ESRI.ArcGIS.Controls.esriSymbologyStyleClass GetSymbolStyle(ESRI.ArcGIS.Carto.IFeatureLayer pLayer) { ESRI.ArcGIS.Controls.esriSymbologyStyleClass styleClass = ESRI.ArcGIS.Controls.esriSymbologyStyleClass.esriStyleClassMarkerSymbols; if (pLayer == null) { return(styleClass); } switch (pLayer.FeatureClass.ShapeType) { case ESRI.ArcGIS.Geometry.esriGeometryType.esriGeometryPoint: styleClass = ESRI.ArcGIS.Controls.esriSymbologyStyleClass.esriStyleClassMarkerSymbols; break; case ESRI.ArcGIS.Geometry.esriGeometryType.esriGeometryPolyline: styleClass = ESRI.ArcGIS.Controls.esriSymbologyStyleClass.esriStyleClassLineSymbols; break; case ESRI.ArcGIS.Geometry.esriGeometryType.esriGeometryPolygon: styleClass = ESRI.ArcGIS.Controls.esriSymbologyStyleClass.esriStyleClassFillSymbols; break; } switch (pLayer.FeatureClass.FeatureType) { case ESRI.ArcGIS.Geodatabase.esriFeatureType.esriFTAnnotation: styleClass = ESRI.ArcGIS.Controls.esriSymbologyStyleClass.esriStyleClassTextSymbols; break; } return(styleClass); }
public frmSymbology(byte[] rendererValue, string rendererType, ESRI.ArcGIS.Controls.esriSymbologyStyleClass pStyleClass, List <ESRI.ArcGIS.Geodatabase.IField> pFields) { m_FeatureLayer = null; m_StyleClass = pStyleClass; m_RendererObject = new Dictionary <string, IRendererUI>(); m_FeatureRenderer = GetRenderer(rendererValue, rendererType); m_FieldInfo = new List <FieldInfo>(); FieldInfo noneField = new FieldInfo(); noneField.FieldName = "<NONE>"; noneField.FieldDesc = "<NONE>"; noneField.FieldType = ESRI.ArcGIS.Geodatabase.esriFieldType.esriFieldTypeDate; m_FieldInfo.Add(noneField); if (pFields != null && pFields.Count != 0) { for (int i = 0; i < pFields.Count; i++) { FieldInfo field = new FieldInfo(); //if ((pFields[i].VarType > 1 && pFields[i].VarType < 6 && pFields[i].Type != ESRI.ArcGIS.Geodatabase.esriFieldType.esriFieldTypeOID) // || pFields[i].Type == ESRI.ArcGIS.Geodatabase.esriFieldType.esriFieldTypeString) if ((int)pFields[i].Type < 5) { field.FieldName = pFields[i].Name; field.FieldDesc = pFields[i].AliasName; field.FieldType = pFields[i].Type; m_FieldInfo.Add(field); } } } InitializeUI(); InitRendererUI(m_FieldInfo); }
public frmSymbology(ESRI.ArcGIS.Carto.IFeatureLayer pFeatureLayer) { InitializeComponent(); m_FeatureLayer = pFeatureLayer; if (m_FeatureLayer == null) { return; } m_StyleClass = GetSymbolStyle(pFeatureLayer); m_RendererObject = new Dictionary <string, IRendererUI>(); m_FeatureRenderer = GetRenderer(m_FeatureLayer); m_FieldInfo = null; InitializeUI(); InitRendererUI(m_FieldInfo); }
public IStyleGalleryItem GetItem(ESRI.ArcGIS.Controls.esriSymbologyStyleClass styleClass) { m_StyleGalleryItem = null; //Disable ok button button1.Enabled = false; //Set the style class axSymbologyControl1.StyleClass = styleClass; //Unselect any selected item in the current style class axSymbologyControl1.GetStyleClass(styleClass).UnselectItem(); //Show the modal form this.ShowDialog(); //Return the selected label style return(m_StyleGalleryItem); }