2017-05-31 6 views
-1

J'ai créé des entités ponctuelles. mais je ne peux pas ajouter de table attributaire de données.Comment créer des entités ponctuelles et ajouter des données dans une table attibute en même temps?

IMxDocument pMxdoc = ArcMap.Application.Document as IMxDocument; 
IPoint pPoint = pMxdoc.ActivatedView.ScreenDisplay.DisplayTransformation.ToMapPoint(arg.X, arg.Y); 
IFeatureLayer pFLayer = pMxdoc.FocusMap.Layer[3] as IFeatureLayer; 
IWorkspaceEdit pWSE = ((IDataset)(pFLayer.FeatureClass)).Workspace as IWorkspaceEdit; 
pWSE.StartEditing(false); 
pWSE.StartEditOperation(); 

IFeature pFeature = pFLayer.FeatureClass.CreateFeature(); 
pFeature.Shape = pPoint; 
pFeature.Store(); 

// I want to add data in table this here but how? 

pWSE.StopEditOperation(); 
pWSE.StopEditing(true); 

pMxdoc.ActivatedView.Refresh(); 

Répondre

3

Vous assignez uniquement une géométrie à la fonction, mais vous pouvez avoir besoin d'autres attributs. Ainsi, vous devez définir les valeurs d'attribut pour votre fonctionnalité en cours en utilisant set_Value:

int fieldIndex = myFeatureClass.FindField(attributeName); 
object newValue = "newValue"; 
IFeature pFeature = pFLayer.FeatureClass.CreateFeature(); 
pFeature.set_Value(fieldIndex, newValue); 
pFeature.Shape = pPoint; 
pFeature.Store(); 
+0

Cela fonctionne. Merci LuiDepuisBeere –