تخصيص خصائص الحقل
Aspose.Words يوفر القدرة على التفاعل برمجيا مع خصائص المجال المختلفة. في هذه المقالة، سنلقي نظرة على مثالين حتى تفهم المبدأ الأساسي للعمل مع خصائص المجال. يمكنك رؤية القائمة الكاملة للخصائص لكل نوع حقل في الفئة المقابلة في Fields namespace.
تحديث الممتلكات الميدانية
في بعض الأحيان يحتاج المستخدمون إلى تغيير قيمة خاصية الحقل. على سبيل المثال، قم بتحديث خاصية AuthorName للحقل AUTHOR
أو قم بتغيير خاصية FieldName للحقل MERGEFIELD
.
يوضح مثال التعليمات البرمجية التالية كيفية إعادة تسمية حقول الدمج في مستند ورد:
//For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-C | |
auto doc = MakeObject<Document>(); | |
auto builder = MakeObject<DocumentBuilder>(doc); | |
builder->InsertField(u"MERGEFIELD MyMergeField1 \\* MERGEFORMAT"); | |
builder->InsertField(u"MERGEFIELD MyMergeField2 \\* MERGEFORMAT"); | |
// Select all field start nodes so we can find the merge fields. | |
SharedPtr<NodeCollection> fieldStarts = doc->GetChildNodes(NodeType::FieldStart, true); | |
for (const auto& fieldStart : System::IterateOver<FieldStart>(fieldStarts)) | |
{ | |
if (fieldStart->get_FieldType() == FieldType::FieldMergeField) | |
{ | |
auto mergeField = MakeObject<WorkingWithFields::MergeField>(fieldStart); | |
mergeField->set_Name(mergeField->get_Name() + u"_Renamed"); | |
} | |
} | |
doc->Save(ArtifactsDir + u"WorkingWithFields.RenameMergeFields.docx"); |
نتيجة عرض الحقل
Aspose.Words يوفر خاصية للحصول على نتيجة الحقل للحقول التي لا تحتوي على عقدة فاصل حقل. نسمي هذه “النتيجة المزيفة” أو نتيجة العرض ؛ Microsoft Word يعرضها في المستند عن طريق حساب قيمة الحقل بسرعة، ولكن لا توجد مثل هذه القيمة في نموذج المستند.
يوضح مثال الكود التالي استخدام خاصية DisplayResult:
//For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-C | |
auto doc = MakeObject<Document>(MyDir + u"Various fields.docx"); | |
doc->UpdateFields(); | |
for (const auto& field : System::IterateOver(document->get_Range()->get_Fields())) | |
{ | |
std::cout << field->get_DisplayResult() << std::endl; | |
} |