Метод FeatureLabel.Set добавляет или изменяет отношение между атрибутивным полем объекта и элементами AutoCAD, TEXT, MTEXT, DIMENSION или ATTDEF.
При использовании метода FeatureLabel.Set необходимо принимать во внимание следующее:
- Если текстовое значение надписи объекта меняется, значение атрибута связанного объекта обновляется автоматически.
- Если значение атрибута связанного объекта меняется, значение связанного текстового объекта будет обновлено автоматически.
- Можно связать значения атрибутивных полей объекта с большинством типов атрибутивных полей объекта.
- Вы не можете связать поля отчета с текстом или значениями атрибутов блока.
- Связанные элементы DIMENSION предназначены только для чтения. Значение связанного поля получено из текста DIMENSION.
Декларация
public bool Esri.ArcGISForAutoCAD.FeatureLabel.Set(Document doc, string flName, string fieldName, ObjectId featureObjectId, ObjectId textObjectId)
Параметры
| Тип | Имя | Описание | Обязательный |
|---|---|---|---|
Документ | doc | Документ AutoCAD, на основании которого следует действовать. | required |
string | flName | Имя существующего векторного слоя в чертеже. | required |
string | fieldName | Источник имени атрибутивного поля объекта для надписи. | required |
ObjectId | featureObjectId | AutoCAD ObjectId объекта, с которым необходимо связать указанный текст. | required |
ObjectId | textObjectId | AutoCAD ObjectId текстового элемента для связи в качестве значения атрибутивного поля. | required |
Возвращаемые значения
| Тип | Описание |
|---|---|
булево | true, если надпись была установлена успешно |
Замечания по условиям возникновения ошибок
Этот метод может выдать исключение или вернуть false или null, если параметр является недопустимым.
Пример
Вывести сообщение об успешном выборе объекта векторного слоя Parcels и текстового элемента для установки значения поля Owner.// Initialize
var doc = Application.DocumentManager.MdiActiveDocument;
var flName = "Parcels";
var fieldName = "Owner";
var featureObjId = Esri.ArcGISForAutoCAD.FeatureLayer.SelectEntity(doc, flName);
var textObjId = doc.Editor.GetEntity(new PromptEntityOptions("\nSelect text entity: ")).ObjectId;
// Set the label
var success = Esri.ArcGISForAutoCAD.FeatureLabel.Set(doc, flName, fieldName, featureObjId, textObjId);
// Print the success
doc.Editor.WriteMessage(success.ToString());
/* Example output
True
*/
См. также
esri_label_set - функция AutoLISP добавляет или изменяет отношение между атрибутивным полем объекта и элементами AutoCAD, TEXT, MTEXT, DIMENSION или ATTDEF.