Arcgis Engine¶þ´Î¿ª·¢ÊµÑ鱨¸æ ÏÂÔØ±¾ÎÄ

{

//»ñÈ¡\ͼ²ã£¬²¢½øÐзÃÎÊ£¬ÅжÏÊÇ·ñ³É¹¦ ILayer layer = GetLayerByName(\);

IFeatureLayerfeatureLayer = layer asIFeatureLayer; if (featureLayer == null) { returnnull; }

//µ÷ÓÃIfeatureLayerµÄSearch·½·¨£¬ÓÃÓÚ±éÀúͼ²ãÖеÄÒªËØ£¬ÅжÏÊÇ·ñ³É¹¦ IFeature feature;

IFeatureCursorfeatureCursor = featureLayer.Search(null, false); feature = featureCursor.NextFeature(); if (feature == null) { returnnull; }

//н¨DataTableÀàÐͶÔÏó

DataTabledataTable = newDataTable();

//н¨DataColumn¶ÔÏ󣬱£´æ¸÷¸öÖݵÄÐòºÅºÍÃû³Æ£¬²¢½«Æä¼ÓÈëDataTableÖÐ DataColumndataColumn = newDataColumn(); dataColumn.ColumnName = \ÐòºÅ\;

dataColumn.DataType = System.Type.GetType(\); dataTable.Columns.Add(dataColumn); dataColumn = newDataColumn(); dataColumn.ColumnName = \Ãû³Æ\;

dataColumn.DataType = System.Type.GetType(\); dataTable.Columns.Add(dataColumn);

//±éÀúͼ²ãÖеÄËùÓÐÒªËØ£¬¹ØÁªÊý¾Ý±íÖеÄÏÂÒ»ÐÐ //½«ÒªËصÄÐòºÅºÍÃû³Æ¸³¸øÊý¾Ý±íÖÐ DataRowdataRow;

while (feature != null) {

dataRow = dataTable.NewRow();

dataRow[0] = feature.get_Value(0); dataRow[1] = feature.get_Value(2); dataTable.Rows.Add(dataRow);

feature = featureCursor.NextFeature(); } //·µ»ØÊý¾Ý±í returndataTable; }

4. ʵÏÖ´´½¨Êý¾ÝÁÐ±í¹¦ÄÜ

//Éú³É²Ëµ¥Ïîµã»÷ʼþÏìÓ¦º¯Êý£¬²¢ÔÚÊý¾Ýչʾ̨ÏÔʾÊý¾Ý±í privatevoidmiAccessData_Click(object sender, EventArgs e) {

DataOperatordataOperator = newDataOperator(axMapControl1.Map); DataBoarddataBoard = newDataBoard(\¸÷´óÖÞÖÞÃû\, dataOperator.GetContinentsNames()); dataBoard.Show(); }

ʵÑé½á¹û£º

2 ʵÑéÈý£ºµØÍ¼äÖȾ

3.1 ʵÑéÄ¿µÄ

? ÁË½âµØÍ¼·ûºÅµÄ·ÖÀàÓë¿ÉÊÓ»¯¹ý³Ì ? ÕÆÎÕµØÍ¼·ûºÅµÄäÖȾ·½·¨

3.2 ʵÑéÄÚÈÝ

? ±àд¡°µØÍ¼±àÖÆ¡±À࣬Ìí¼Ó³ÉÔ±º¯Êý ? ʵÏÖ»ñÈ¡µØÍ¼äÖȾÆ÷ÐÅÏ¢¹¦ÄÜ ? ʵÏÖµØÍ¼µÄ¼òµ¥·ûºÅäÖȾ

3.3 ʵÑé²½Öè½á¹û

ʵÑé˼·£º

µØÍ¼äÖȾÊÇÖ¸Óò»Í¬µÄÑÕÉ«ºÍ·ûºÅ¶ÔµØÍ¼½øÐпÉÊÓ»¯¡£ÌØÕ÷äÖȾÆ÷ÓаËÀ࣬±¾ÊµÑéÊDzÉÓüòµ¥äÖȾÆ÷£¬¼´¶ÔÕû¸öͼ²ãÒªËØÓÃͬһÖÖ·½Ê½½øÐÐäÖȾ£¬²Ù×÷¶ÔÏóÊÇ¡°World Cities¡±Í¼²ã¡£ÓÉÓÚÒªÓõ½Êý¾Ý²Ù×÷ÀຯÊý£¬ËùÒÔʵÑéÔÚʵÑé¶þµÄ»ù´¡ÉϽøÐС£

ʵÑé·ÖΪÒÔϼ¸¸ö²¿·Ö£º

1. Ìí¼ÓÖ÷´°Ìå¿Ø¼þºÍµ¼ÈëÀà¿â£ºµØÍ¼±íÏֲ˵¥ÏîºÍÁ½¸öÏÂÀ­²Ëµ¥Ïî¼òµ¥äÖȾÆ÷ºÍ»ñÈ¡äÖȾÆ÷ÐÅÏ¢¡£

2. Ìí¼ÓµØÍ¼±àÖÆÀಢΪÆäµ¼È벿·ÖÀà¿â£º¸ÃÀàÓÃÓÚ¹ÜÀíµ±Ç°ÏîÄ¿ÖÐÉæ¼°µØÍ¼ÕûÊΡ¢Ð޸ĺÍչʾµÄÏà¹Ø¹¦ÄÜ

3. Ìí¼ÓÀà³ÉÔ±º¯Êý£º°üÀ¨Èý¸ö£¬·Ö±ðÊÇ»ñȡָ¶¨Í¼²ãµÄäÖȾÆ÷ÀàÐÍÐÅÏ¢º¯Êý¡¢»ñȡָ¶¨Í¼²ãµÄ·ûºÅÐÅÏ¢º¯Êý¡¢Í³Ò»ÉèÖÃÖ¸¶¨Í¼²ãäÖȾ²ÎÊýº¯Êý 4. Ìí¼ÓʼþÏìÓ¦º¯Êý£º¼òµ¥äÖȾͼ²ã²Ëµ¥ÏîµÄµã»÷ʼþÏìÓ¦º¯Êý¡¢»ñÈ¡äÖȾÆ÷ÐÅÏ¢µã»÷ʼþÏìÓ¦º¯Êý

ʵÏÖÁ÷³ÌÈçÏ£º

Ìí¼ÓÖ÷´°Ìå¿Ø¼þºÍÀà¿âÌí¼ÓµØÍ¼±àÖÆÀàÌí¼ÓÀà³ÉÔ±º¯Êýͼ²ã±»äÖȾ²¢Ë¢ÐÂÊÓͼÔËÐгÌÐòµã»÷¼òµ¥äÖȾͼ²ãÌí¼ÓʼþÏìÓ¦º¯Êýµã»÷»ñÈ¡äÖȾÆ÷ÐÅÏ¢¹Ø¼ü´úÂ룺 1.Ìí¼Ó¿Ø¼þ

usingESRI.ArcGIS.Display;

³öÏÖäÖȾÆ÷ÀàÐÍÎı¾¿ò

2.Ìí¼ÓµØÍ¼±àÖÆÀà

usingESRI.ArcGIS.Carto;

usingESRI.ArcGIS.Geodatabase; usingESRI.ArcGIS.Geometry; usingESRI.ArcGIS.Display;

3.ÍêÉÆÀàµÄ¹¦ÄÜ

//Ìí¼Ó³ÉÔ±º¯Êý£¬»ñȡָ¶¨Í¼²ãµÄäÖȾÆ÷ÀàÐÍÐÅÏ¢

publicstaticStringGetRenderTypeByLayer(ILayer layer) {

//ÅжÏͼ²ãÊÇ·ñ»ñÈ¡³É¹¦ if (layer == null) {

return\ͼ²ã»ñȡʧ°Ü\; }

//ʹÓÃIFeatureLayer½Ó¿Ú·ÃÎÊÖ¸¶¨Í¼²ã£¬²¢»ñÈ¡ÆääÖȾÆ÷ IFeatureLayerfeatureLayer = layer asIFeatureLayer;

IGeoFeatureLayergeoFeatureLayer = layer asIGeoFeatureLayer; IFeatureRendererfeatureRenderer = geoFeatureLayer.Renderer;

//ÅжϸÃͼ²ãäÖȾÆ÷ÊÇ·ñΪ±¸Ñ¡äÖȾÆ÷ÀàÐÍÖ®Ò»£¬Æ¥Åä³É¹¦Ôò·µ»ØÀàÐÍÐÅÏ¢ if (featureRendererisISimpleRenderer)