Multiple selected objects - C#

410
1
Jump to solution
05-15-2012 11:16 AM
RustamTimerbaev
New Contributor II
For examle, i have attribute table with very many rows. How to get object ID from selected rows in this table?
0 Kudos
1 Solution

Accepted Solutions
DennisGeasan
Occasional Contributor II
Look at this:

List<int> RecArray = new List<int>(); IQueryFilter pSDEQueryFilter = new QueryFilterClass(); pSDEQueryFilter.WhereClause = "enter the selection criteria here" //For example population > 50000 IFeatureCursor pSDEFeatureCursor; IFeature pSDEFeature; pSpatialWorkSpace = GetWorkSpace(m_GDBType); //Method that uses the code pattern for getting a geodatabase workspace.  Code for this not included. IFeatureWorkspace pSDEFeatureWorkspace = (IFeatureWorkspace)pSpatialWorkSpace; IFeatureClass pSDEFeatureClass = pSDEFeatureWorkspace.OpenFeatureClass("the name of a feature class"); //Get a record count int SDE_TotalRecCount = pSDEFeatureClass.FeatureCount(pSDEQueryFilter); //Set up the cursor and get the results pSDEFeatureCursor = pSDEFeatureClass.Search(pSDEQueryFilter, true); pSDEFeature = pSDEFeatureCursor.NextFeature(); while (pSDEFeature != null)  {       RecArray.Add(Convert.ToInt32(pSDEFeature.get_Value(pSDEFeature.Fields.FindField("OID"))));       pSDEFeature = pSDEFeatureCursor.NextFeature();  } 

View solution in original post

0 Kudos
1 Reply
DennisGeasan
Occasional Contributor II
Look at this:

List<int> RecArray = new List<int>(); IQueryFilter pSDEQueryFilter = new QueryFilterClass(); pSDEQueryFilter.WhereClause = "enter the selection criteria here" //For example population > 50000 IFeatureCursor pSDEFeatureCursor; IFeature pSDEFeature; pSpatialWorkSpace = GetWorkSpace(m_GDBType); //Method that uses the code pattern for getting a geodatabase workspace.  Code for this not included. IFeatureWorkspace pSDEFeatureWorkspace = (IFeatureWorkspace)pSpatialWorkSpace; IFeatureClass pSDEFeatureClass = pSDEFeatureWorkspace.OpenFeatureClass("the name of a feature class"); //Get a record count int SDE_TotalRecCount = pSDEFeatureClass.FeatureCount(pSDEQueryFilter); //Set up the cursor and get the results pSDEFeatureCursor = pSDEFeatureClass.Search(pSDEQueryFilter, true); pSDEFeature = pSDEFeatureCursor.NextFeature(); while (pSDEFeature != null)  {       RecArray.Add(Convert.ToInt32(pSDEFeature.get_Value(pSDEFeature.Fields.FindField("OID"))));       pSDEFeature = pSDEFeatureCursor.NextFeature();  } 
0 Kudos