IField与IFieldEdit区别 修改IField字段

1.IField和IFieldEdit区别:

IFieldEdit是继承IField的,因为IField的属性大部分是只读的(read-only),所以IFieldEdit就在IField的基础上多了个只写的属性。这也是为什么会出现Name_2、Length_2等原因了。IFields和IFieldsEdit的区别也是如此。

2.IField和IFields区别

IFields是IField的集合,通过AddField()方法或者set_Field()方法添加Field,其中set_Field通过index可以在指定的位置添加Field;

3.代码

            IFeatureCursor pFeatureCursor = pFeatureClass.Insert(true);
            IFeatureBuffer pFeatureBuffer = pFeatureClass.CreateFeatureBuffer();
            IFields pFields = pFeatureClass.Fields;
            IField pField = pFields.get_Field(pFields.FindField("DocPath"));
            IFieldEdit2 pFieldEdit=pField as IFieldEdit2;
            pFieldEdit.Length_2 = 20;

 

posted @ 2017-12-05 09:49  zmqgis  阅读(1174)  评论(0编辑  收藏  举报