pFeatureClass = pFeatureLayer.FeatureClass; pFeatureCursor = pFeatureClass.Search((IQueryFilter)pSpatialFilter,false); pFeature = pFeatureCursor.NextFeature();
while (pFeature != null) {
listView1.Items.Add(pLayer.Name); } } } }
}
=============================== 回答网友韶华响当当关于更改符号的代码 ===============================
private void axTOC1_OnDoubleClick(object sender, ITOCControlEvents_OnDoubleClickEvent e) {
esriTOCControlItem itemType = esriTOCControlItem.esriTOCControlItemNone; IBasicMap basicMap = null; ILayer layer = null; object unk = null; object data = null;
axTOC1.HitTest(e.x, e.y, ref itemType, ref basicMap, ref layer, ref unk, refdata);
if (e.button == 1) { if (itemType == esriTOCControlItem.esriTOCControlItemLegendClass) { //取得图例
ILegendClass pLegendClass =((ILegendGroup)unk).get_Class((int)data);
//创建符号选择器SymbolSelector实例
FormSymbolControl SymbolSelectorFrm= newFormSymbolControl(pLegendClass, layer);
if (SymbolSelectorFrm.ShowDialog()== DialogResult.OK) { //局部更新主Map控件
//m_mapControl.ActiveView.PartialRefresh(esriViewDrawPhase.esriViewGeography, null, null);
axMap1.ActiveView.PartialRefresh(esriViewDrawPhase.esriViewGeography, null, null);
//设置新的符号
pLegendClass.Symbol = SymbolSelectorFrm.pSymbol; //更新主Map控件和图层控件 this.axMap1.ActiveView.Refresh(); this.axTOC1.Refresh(); } } } }
=============================== 回答网友韶华响当当关于显示属性的代码 ===============================
///
/// 填充DataTable中的数据 /// /// /// ///
public static DataTable CreateDataTable(ILayer pLayer, string tableName) {
//创建空DataTable DataTable pDataTable = CreateDataTableByLayer(pLayer, tableName); //创建DataTable的行对象 DataRow pDataRow = null;
//取得图层类型
string shapeType = getShapeType(pLayer);