0
我正在嘗試創建一個獨立的應用程序,該應用程序加載ArcGis地圖,在一個圖層中選擇幾個對象並將它們放大。ArcGis引擎如何選擇對象?
加載和顯示在地圖上不工作,使用這樣的事情:
AxMapControl _mapControl;
// in constructor:
_mapControl = new AxMapControl();
// in loading
_mapControl.LoadMxFile(@"C:\Users\me\Documents\TestProject.mxd");
這並不很好地工作和不顯示地圖,如充分的程度(當然AxMapControl嵌入到WindowsFormsHost,但是這不應該這不是問題)。
但現在我需要選擇一個或多個對象並縮放它們。我試圖在一個層進行測試選擇,但是這並不在所有的工作:
IFeatureSelection features = _mapControl.Map.Layer[0] as IFeatureSelection;
if (features != null)
{
QueryFilter qf = new QueryFilterClass();
qf.WhereClause = "[Name]='FS4711000'";
features.SelectFeatures(qf, esriSelectionResultEnum.esriSelectionResultNew, false);
}
在SelectFeatures致電我得到ESRI.ArcGIS.Carto一個COM錯誤80004005(E_FAIL),沒有太多的更多的解釋。也許我做的都是錯的。
也許有人有一個示例如何選擇圖層中的對象?
嗯,老實說,我嘗試過和沒有括號,並有雙方的錯誤。現在我再次嘗試確認,而且它沒有使用括號?!?無論你如何神奇地讓我的代碼工作,謝謝! :) – Sam 2011-02-28 13:09:33
針對記錄不完善的ESRI API進行編程需要更多愚蠢的運氣,創造性的猜測和**純粹的黑巫術**而不是技巧。歡迎來到你最可怕的噩夢:) – jevakallio 2011-02-28 13:14:58
哦當然,我認爲編寫舊大道腳本是我最糟糕的噩夢 - 但ESRI成功創造了惡夢?可憐的我! :) – Sam 2011-02-28 13:36:13